IP Library Granted Patent US 10,216,809
Granted Patent B1
US 10,216,809 · App. 14/793,276 · Granted Feb 26, 2019

Mobile explorer

Inventors: Benjamin Reyes (Great Falls, VA); Hugh Owen (Vienna, VA); Jose Nocedal de la Garza (Vienna, VA)
Assignee: MicroStrategy Incorporated
G06F17/30554G06F3/0484G06F3/04883
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 10,216,809
App. No.
14/793,276
Granted
Feb 26, 2019
Kind
B1
Abstract

A system extracts data from one or more sources of data and displays information regarding the data using interactive visualizations that allow a user to interact directly with the visualizations of the data, without necessarily requiring the user to utilize a menu-driven interface.

Claims (56)

1. A method executed on one or more computers, the method comprising:

configuring, by the one or more computers, a user interface to provide data to be displayed using the one or more computers, the user interface having a structure comprising a template for visualization of data, a visualization panel for selecting data visualizations associated with the template, and a filter path for filtering data;

receiving, by the one or more computers, a first query through the user interface;

obtaining, by the one or more computers, first data based on the first query;

displaying, using the template in the user interface and a touch-screen display of the one or more computers, a first graphical representation of the first data through which the first data is represented by one or more geometric objects;

receiving a touch input in a particular region of the first graphical representation displayed on the touch-screen display, the touch input corresponding to a second query associated with the first data;

in response to receiving the touch input corresponding to the second query:

updating, by the one or more computers, the template and the filter path based on the received second query;

obtaining by the one or more computers, second data based on the second query and the updated filter path;

selecting, by the one or more computers and from among a plurality of visualizations that are provided by the visualization panel and associated with the updated template, one or more second visualizations to display the second data; and

displaying, on the touch-screen display of the one or more computers, (I) a second graphical representation of the second data according to the updated template and the selected one or more second visualizations, (II) the updated filter path applied to filter the second data, and (III) a data enrichment panel including one or more indicators indicating data in the second data provided in response to the second query and not provided in response to the first query.

2. The method of claim 1 , wherein the first graphical representation is a visualization of data stored in a database system.

3. The method of claim 1 , wherein the first graphical representation of the first data comprises at least one of a temporal-based visualization, geographic-based visualization, or three-dimensional-based visualization.

4. The method of claim 1 , wherein selecting the one or more second visualizations comprises at least one of splitting of a geometric object into a plurality of smaller geometric objects, merging of two or more geometric objects into a larger geometric object, or three-dimensional rotating of the graphical representation.

5. The method of claim 1 , wherein the touch input comprises at least one of a tap, a swipe, a drag-and-drop, or a pinch.

6. The method of claim 1 , wherein the second query represents a request for more details regarding a portion of the first data associated with the particular region of the graphical representation in which the input touch was received.

7. The method of claim 1 , wherein the first graphical representation of the first data comprises two or more visual layers representing different attributes of the first data, wherein the different attributes of the first data comprise at least one of a geographic attribute or a temporal attribute.

8. The method of claim 1 , further comprising displaying, in response to the touch input, a preview of the second data, the preview representing a simplified version of the graphical representation of the second data.

9. The method of claim 8 , further comprising generating the preview of the second data based on metadata associated with the second data.

10. The method of claim 1 , wherein the second query comprises a request for a filtering operation based on at least one of an attribute of the second data or a criterion specified by a user.

11. The method of claim 10 , wherein the attribute of the second data comprises at least one of a geographic attribute or a temporal attribute, and

the criterion specified by the user comprises at least one of an aggregate value metric, an average value metric, or a maximum value metric.

12. The method of claim 1 , wherein at least one of obtaining the first data or obtaining the second data comprises connecting to one or more remote data stores over a communication network.

13. The method of claim 1 , further comprising:

accessing a user profile that comprises one or more templates for graphical representations of data, and

wherein the template used to display the first data comprises the one or more templates in the user profile.

14. The method of claim 1 , wherein displaying the graphical representation of the first data comprises:

selecting a subset of the first data, and

generating the graphical representation of the first data based on the selected subset of the first data.

15. The method of claim 1 , wherein the second graphical representation comprises a split visualization comprising a timeline-based visualization and a geographic-based visualization.

16. The method of claim 15 , wherein the second query comprises a request to merge data between at least two visualizations among the plurality of visualizations.

17. The method of claim 1 , further comprising storing the obtained first data and the obtained second data in a local data store in the one or more computers.

18. The method of claim 1 , wherein the first data comprises a plurality of datasets obtained from physically separate data stores.

19. A system comprising:

one or more computers and one or more storage devices storing instructions which when executed by the one or more computers, cause the one or more computers to perform operations comprising:

configuring a user interface to provide data to be displayed using the one or more computers, the user interface having a structure comprising a template for visualization of data, a visualization panel for selecting data visualizations associated with the template, and a filter path for filtering data;

receiving a first query through the user interface;

obtaining first data based on the first query;

displaying, using the template in the user interface and a touch-screen display of the one or more computers, a first graphical representation of the first data through which the first data is represented by one or more geometric objects;

receiving a touch input in a particular region of the first graphical representation displayed on the touch-screen display, the touch input corresponding to a second query associated with the first data;

in response to receiving the touch input corresponding to the second query:

updating the template and the filter path based on the received second query;

obtaining second data based on the second query and the updated filter path;

selecting, from among a plurality of visualizations that are provided by the visualization panel and associated with the updated template, one or more second visualizations to display the second data; and

displaying, on the touch-screen display of the one or more computers, (I) a second graphical representation of the second data according to the updated template and the selected one or more second visualizations, (II) the updated filter path applied to filter the second data, and (III) a data enrichment panel including one or more indicators indicating data in the second data provided in response to the second query and not provided in response to the first query.

20. One or more non-transitory computer-readable storage media including instructions, which upon execution by one or more computers, cause the one or more computers to perform operations comprising:

configuring a user interface to provide data to be displayed using the one or more computers, the user interface having a structure comprising a template for visualization of data, a visualization panel for selecting data visualizations associated with the template, and a filter path for filtering data;

receiving a first query through the user interface;

obtaining first data based on the first query;

displaying, using the template in the user interface and a touch-screen display of the one or more computers, a first graphical representation of the first data through which the first data is represented by one or more geometric objects;

receiving a touch input in a particular region of the first graphical representation displayed on the touch-screen display, the touch input corresponding to a second query associated with the first data;

in response to receiving the touch input corresponding to the second query:

updating the template and the filter path based on the received second query;

obtaining second data based on the second query and the updated filter path;

selecting, from among a plurality of visualizations that are provided by the visualization panel and associated with the updated template, one or more second visualizations to display the second data; and

displaying, on the touch-screen display of the one or more computers, (I) a second graphical representation of the second data according to the updated template and the selected one or more second visualizations, (II) the updated filter path applied to filter the second data, and (III) a data enrichment panel including one or more indicators indicating data in the second data provided in response to the second query and not provided in response to the first query.

Assignments (4)
CHANGE OF NAME Recorded Sep 19, 2025
From: MICROSTRATEGY INCORPORATED
To: STRATEGY INC
Reel/Frame 072909/0870 →
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 Nov 28, 2018
From: REYES, BENJAMIN; OWEN, HUGH; GARZA, JOSE NOCEDAL
To: MICROSTRATEGY INCORPORATED
Reel/Frame 047606/0084 →
Continuity (1)
Provisional Application 62021518 · Jul 7, 2014