IP Library Granted Patent US 12,306,815
Granted Patent B2
US 12,306,815 · App. 18/337,332 · Granted May 20, 2025

Resource grouping for resource dependency system and graphical user interface

Inventors: James Thompson (London, GB); Joseph Rafidi (Washington, DC); Patrick Szmucer (London, GB)
Assignee: Palantir Technologies Inc.
G06F16/221G06F16/168G06F16/9024G06F16/904G06F16/906G06F16/909G06N7/01G06Q10/06315
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 12,306,815
App. No.
18/337,332
Granted
May 20, 2025
Kind
B2
Abstract

A resource dependency system and its associated user interfaces, used for tracking data dependencies and data transformations between resources, may display visual node graphs with resources as nodes and the data dependencies and data transformations associated with the columns as edges between the nodes. The nodes representing the resources may be displayed differently based on relevant differences in the resources they represent, which can be set through various selectable criteria and schemes. The user interfaces may include selectable options for visually arranging the nodes or grouping the nodes into superseding nodes according to how the nodes are displayed or the relevant differences in the resources they represent. Updated properties and data dependencies associated with superseding nodes can be presented to the user.

Claims (69)

1. A computer-implemented method of processing and managing a node-based and dependency-based data graph, the method comprising:

generating user interface data for rendering a graphical user interface comprising:

a selectable field for selecting a user;

a plurality of nodes having one or more node types, wherein the plurality of nodes represent pre-existing resources, wherein the plurality of nodes are displayed with various visual formats corresponding to the one or more node types; and

one or more directed edges drawn between respective pairs of nodes of the plurality of nodes and indicating dependencies between the pairs of nodes,

wherein the one or more node types are based on existing permission levels previously granted to a selected user to access the pre-existing resources represented by the plurality of nodes, wherein the node type of a given node depends on the selected user;

receiving a selection via the selectable field of a first selected user for which to indicate, via the graphical user interface, the existing permission levels previously granted to the first selected user to access the pre-existing resources represented by the plurality of nodes;

displaying the plurality of nodes in the graphical user interface with the various visual formats based on the one or more node types to indicate the existing permission levels previously granted to the first selected user; and

updating the various visual formats of the plurality of nodes that are simultaneously displayed within the graphical user interface responsive to a second selection via the selectable field of a second selected user for which to indicate the existing permission levels previously granted to the second selected user to access the pre-existing resources represented by the plurality of nodes.

2. The computer-implemented method of claim 1 , wherein the existing permission levels granted to the selected user to access the pre-existing resources represented by the plurality of nodes comprises data access and resource access, wherein the data access is permission for the selected user to access data of the pre-existing resources, and wherein the resource access is permission for the selected user to discover existence of the pre-existing resources.

3. The computer-implemented method of claim 1 , wherein the selected user is different than a user presented with the graphical user interface, wherein the existing permission levels granted to the selected user to access the pre-existing resources represented by the plurality of nodes comprises permissions unknown, and wherein permissions unknown indicates the selected user does not share a same permissions level as the user presented with the graphical user interface.

4. The computer-implemented method of claim 1 , wherein the selected user is different than a user presented with the graphical user interface.

5. The computer-implemented method of claim 1 , further comprising:

receiving a selection of a node in the graphical user interface; and

updating the graphical user interface to include a listing of resources to which the selected user must have access in order to access a resource represented by the selected node.

6. The computer-implemented method of claim 1 , further comprising updating the graphical user interface by:

replacing a first set of nodes of the plurality of nodes with a first grouped node;

replacing a second set of nodes of the plurality of nodes with a second grouped node; and

drawing one or more directed edges between the first grouped node and the second grouped node based on directed edges between the first set of nodes and the second set of nodes.

7. The computer-implemented method of claim 1 , wherein the various visual formats comprises a coloration scheme specifying that the plurality of nodes are colored in the graphical user interface according to the one or more node types.

8. The computer-implemented method of claim 1 , further comprising:

receiving a selection of one or more nodes in the graphical user interface; and

displaying information via the graphical user interface that is associated with the one or more selected nodes.

9. The computer-implemented method of claim 1 , further comprising:

receiving a selection of one or more nodes in the graphical user interface; and

displaying through the graphical user interface a breakdown of categories associated with the pre-existing resources represented by the one or more selected nodes.

10. The computer-implemented method of claim 1 , further comprising:

adding a second plurality of nodes to the graphical user interface, wherein the second plurality of nodes represent datasets associated with a project.

11. A computing system configured for processing and managing a node-based and dependency-based data graph, the system comprising:

a computer readable storage medium having program instructions embodied therewith; and

one or more processors configured to execute the program instructions to cause the computing system to:

generate user interface data for rendering a graphical user comprising:

a selectable field for selecting a user;

a plurality of nodes having one or more node types, wherein the plurality of nodes represent pre-existing resources, wherein the plurality of nodes are displayed with various visual formats corresponding to the one or more node types; and

one or more directed edges, wherein the directed edges of the one or more directed edges are drawn between respective pairs of nodes of the plurality of nodes and indicate dependencies between the pairs of nodes,

wherein the one or more node types are based on existing permission levels previously granted to a selected user to access the pre-existing resources represented by the plurality of nodes, wherein the node type of a given node depends on the selected user;

receive a selection via the selectable field of a first selected user for which to indicate, via the graphical user interface, the existing permission levels previously granted to the first selected user to access the pre-existing resources represented by the plurality of nodes;

display the plurality of nodes in the graphical user interface with the various visual formats based on the one or more node types to indicate the existing permission levels previously granted to the first selected user; and

update the various visual formats of the plurality of nodes that are simultaneously displayed within the graphical user interface responsive to a second selection via the selectable field of a second selected user for which to indicate the existing permission levels previously granted to the second selected user to access the pre-existing resources represented by the plurality of nodes.

12. The computing system of claim 11 , wherein the existing permission levels granted to the selected user to access the pre-existing resources represented by the plurality of nodes comprises data access and resource access, wherein the data access is permission for the selected user to access data of the pre-existing resources, and wherein the resource access is permission for the selected user to discover existence of the pre-existing resources.

13. The computing system of claim 11 , wherein the selected user is different than a user presented with the graphical user interface, wherein the existing permission levels granted to the selected user to access the pre-existing resources represented by the plurality of nodes comprises permissions unknown, and wherein permissions unknown indicates the selected user does not share a same permissions level as the user presented with the graphical user interface.

14. The computing system of claim 11 , wherein the one or more processors are further configured to execute the program instructions to cause the computing system to:

receive a selection of a node in the graphical user interface; and

update the graphical user interface to include a listing of resources to which the selected user must have access in order to access a resource represented by the selected node.

15. The computing system of claim 11 , wherein the one or more processors is further configured to execute the program instructions to cause the computing system to update the graphical user interface by:

replacing a first set of nodes of the plurality of nodes with a first grouped node;

replacing a second set of nodes of the plurality of nodes with a second grouped node; and

drawing one or more directed edges between the first grouped node and the second grouped node based on directed edges between the first set of nodes and the second set of nodes.

16. Non-transitory computer-readable media including computer-executable instructions that, when executed by a computing system, cause the computing system to perform operations comprising:

generating user interface data for rendering a graphical user interface comprising:

a selectable field for selecting a user;

a plurality of nodes having one or more node types, wherein the plurality of nodes represent pre-existing resources, wherein the plurality of nodes are displayed with various visual formats corresponding to the one or more node types; and

one or more directed edges, wherein the directed edges of the one or more directed edges are drawn between respective pairs of nodes of the plurality of nodes and indicate dependencies between the pairs of nodes,

wherein the one or more node types are based on existing permission levels previously granted to a selected user to access the pre-existing resources represented by the plurality of nodes, wherein the node type of a given node depends on the selected user;

receiving a selection via the selectable field of a first selected user for which to indicate, via the graphical user interface, the existing permission levels previously granted to the first selected user to access the pre-existing resources represented by the plurality of nodes-;

displaying the plurality of nodes in the graphical user interface with the various visual formats based on the one or more node types to indicate the existing permission levels previously granted to the first selected user; and

updating the various visual formats of the plurality of nodes that are simultaneously displayed within the graphical user interface responsive to a second selection via the selectable field of a second selected user for which to indicate the existing permission levels previously granted to the second selected user to access the pre-existing resources represented by the plurality of nodes.

17. The non-transitory computer-readable media of claim 16 , wherein the existing permission levels granted to the selected user to access the pre-existing resources represented by the plurality of nodes comprises data access and resource access, wherein the data access is permission for the selected user to access data of the pre-existing resources, and wherein the resource access is permission for the selected user to discover existence of the pre-existing resources.

18. The non-transitory computer-readable media of claim 16 , wherein the selected user is different than a user presented with the graphical user interface, wherein the existing permission levels granted to the selected user to access the pre-existing resources represented by the plurality of nodes comprises permissions unknown, and wherein permissions unknown indicates the selected user does not share a same permissions level as the user presented with the graphical user interface.

19. The non-transitory computer-readable media of claim 16 , wherein the computer-executable instructions, when executed by the computing system, further cause the computing system to:

receive a selection of a node in the graphical user interface; and

update the graphical user interface to include a listing of resources to which the selected user must have access in order to access a resource represented by the selected node.

20. The non-transitory computer-readable media of claim 16 , wherein the computer-executable instructions, when executed by the computing system, further cause the computing system to update the graphical user interface by:

replacing a first set of nodes of the plurality of nodes with a first grouped node;

replacing a second set of nodes of the plurality of nodes with a second grouped node; and

drawing one or more directed edges between the first grouped node and the second grouped node based on directed edges between the first set of nodes and the second set of nodes.

21. The computer-implemented method of claim 1 , further comprising:

generating the user interface data for rendering the graphical user interface to an administrator user; and

receiving the selection from the administrator user via the selectable field to indicate the selected user.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 19, 2023
From: THOMPSON, JAMES; RAFIDI, JOSEPH; SZMUCER, PATRICK
To: PALANTIR TECHNOLOGIES INC.
Reel/Frame 063987/0357 →
Continuity (3)
Continuation 16681051 · Nov 12, 2019
Provisional Application 62910940 · Oct 4, 2019
Related Publication 20230351287A1 · Nov 2, 2023
References Cited (84)
US 5450535A · North · 1995 [cited by examiner]
US 8624898B1 · Bugaj et al. · 2014 [cited by applicant]
US 9229952B1 · Meacham et al. · 2016 [cited by applicant]
US 9836183B1 · Love · 2017 [cited by examiner]
US 9881066B1 · Yousaf et al. · 2018 [cited by applicant]
US 10007674B2 · Fink et al. · 2018 [cited by applicant]
US 10432639B1 · Bebee et al. · 2019 [cited by applicant]
US 10592068B1 · Sedky · 2020 [cited by examiner]
US 11003645B1 · Thompson et al. · 2021 [cited by applicant]
US 11030248B2 · Borochoff et al. · 2021 [cited by applicant]
US 11308128B2 · Gerstl et al. · 2022 [cited by applicant]
US 11509658B1 · Kulkarni · 2022 [cited by examiner]
US 11562025B2 · Borochoff et al. · 2023 [cited by applicant]
US 11775898B1 · Thompson et al. · 2023 [cited by applicant]
US 20030105771A1 · Tiefenbrun et al. · 2003 [cited by applicant]
US 20050055369A1 · Gorelik et al. · 2005 [cited by applicant]
US 20060106847A1 · Eckardt, III et al. · 2006 [cited by applicant]
US 20060107196A1 · Thanu et al. · 2006 [cited by applicant]
US 20060242122A1 · Devorchik et al. · 2006 [cited by applicant]
US 20080092112A1 · Jin et al. · 2008 [cited by applicant]
US 20080104665A1 · Naldurg · 2008 [cited by examiner]
US 20090007127A1 · Roberts et al. · 2009 [cited by applicant]
US 20090157686A1 · Idicula · 2009 [cited by examiner]
US 20090327904A1 · Guzak et al. · 2009 [cited by applicant]
US 20100079462A1 · Breeds et al. · 2010 [cited by applicant]
US 20100138420A1 · Bator et al. · 2010 [cited by applicant]
US 20120066210A1 · Mukerjee et al. · 2012 [cited by applicant]
US 20120096389A1 · Flam et al. · 2012 [cited by applicant]
US 20140114907A1 · Kozina et al. · 2014 [cited by applicant]
US 20140188946A1 · Hartman · 2014 [cited by examiner]
US 20150012478A1 · Mohammad · 2015 [cited by applicant]
US 20150186478A1 · Yan et al. · 2015 [cited by applicant]
US 20150347542A1 · Sullivan et al. · 2015 [cited by applicant]
US 20160125000A1 · Meacham et al. · 2016 [cited by applicant]
US 20160191534A1 · Mallozzi · 2016 [cited by examiner]
US 20160232229A1 · Radivojevic · 2016 [cited by applicant]
US 20160342395A1 · Kukolich et al. · 2016 [cited by applicant]
US 20160342678A1 · Newman et al. · 2016 [cited by applicant]
US 20170039253A1 · Bond · 2017 [cited by applicant]
US 20170091082A1 · Ooshima et al. · 2017 [cited by applicant]
US 20170195183A1 · Gershaft et al. · 2017 [cited by applicant]
US 20170221240A1 · Stetson et al. · 2017 [cited by applicant]
US 20170262653A1 · Dang · 2017 [cited by examiner]
US 20170286526A1 · Bar-Or et al. · 2017 [cited by applicant]
US 20170357648A1 · Fink et al. · 2017 [cited by applicant]
US 20170364534A1 · Zhang · 2017 [cited by examiner]
US 20180062953A1 · Billore et al. · 2018 [cited by applicant]
US 20180067932A1 · Paterson et al. · 2018 [cited by applicant]
US 20180129401A1 · Kim et al. · 2018 [cited by applicant]
US 20180136983A1 · Bequet et al. · 2018 [cited by applicant]
US 20180165072A1 · Fink et al. · 2018 [cited by applicant]
US 20180267989A1 · von Muhlen et al. · 2018 [cited by applicant]
US 20180288098A1 · Wang · 2018 [cited by examiner]
US 20180314705A1 · Griffith et al. · 2018 [cited by applicant]
US 20180329958A1 · Choudhury et al. · 2018 [cited by applicant]
US 20180341651A1 · Anderson et al. · 2018 [cited by applicant]
US 20190114335A1 · Koenig et al. · 2019 [cited by applicant]
US 20190188308A1 · Simon et al. · 2019 [cited by applicant]
US 20190251272A1 · Ravizza et al. · 2019 [cited by applicant]
US 20190324989A1 · Borochoff et al. · 2019 [cited by applicant]
US 20200210427A1 · Dugan et al. · 2020 [cited by applicant]
US 20210263973A1 · Borochoff et al. · 2021 [cited by applicant]
US 20210334254A1 · Thompson et al. · 2021 [cited by applicant]
US 20230122210A1 · Borochoff et al. · 2023 [cited by applicant]
EP 2447861 · 2012 [cited by applicant]
EP 2743814 · 2014 [cited by applicant]
EP 3258393 · 2017 [cited by applicant]
EP 3557443 · 2019 [cited by applicant]
WO WO2006036290 · 2006 [cited by applicant]
WO WO2020151308 · 2020 [cited by applicant]
U.S. Appl. No. 18/085,150, Resource Dependency System and Graphical User Interface, filed Dec. 20, 2022. [cited by applicant]
U.S. Appl. No. 17/225,883, Column Lineage for Resource Dependency System and Graphical User Interface, filed Apr. 8, 2021. [cited by applicant]
Official Communication for European Patent Application No. 19169119.5 dated Sep. 12, 2023, 7 pages. [cited by applicant]
Official Communication for European Patent Application No. 19169119.5 dated Jul. 2, 2019. [cited by applicant]
Official Communication for European Patent Application No. 19169119.5 dated Nov. 29, 2021, 5 pages. [cited by applicant]
Official Communication for European Patent Application No. 16194936.7 dated Mar. 9, 2017. [cited by applicant]
Official Communication for European Patent Application No. 19169119.5 dated Apr. 2, 2024, 7 pages. [cited by applicant]
U.S. Pat. No. 11,030,248, Resource Dependency System and Graphical User Interface, Jun. 8, 2021. [cited by applicant]
U.S. Pat. No. 11,562,025, Resource Dependency System and Graphical User Interface, Jan. 24, 2023. [cited by applicant]
U.S. Pat. No. 11,003,645, Column Lineage for Resource Dependency System and Graphical User Interface, May 11, 2021. [cited by applicant]
U.S. Pat. No. 11,775,898, Resource Grouping for Resource Dependency System and Graphical User Interface, Oct. 3, 2023. [cited by applicant]
U.S. Appl. No. 19/019,998, Resource Grouping for Resource Dependency System and Graphical User Interface, filed Jan. 14, 2025. [cited by applicant]
U.S. Appl. No. 18/085,150, Resource Grouping for Resource Dependency System and Graphical User Interface, filed Dec. 20, 2022. [cited by applicant]
U.S. Appl. No. 17/225,883, Resource Grouping for Resource Dependency System and Graphical User Interface, filed Apr. 8, 2021. [cited by applicant]