IP Library › Granted Patent US 11,741,085
Granted Patent B2
US 11,741,085 · App. 17/558,653 · Granted Aug 29, 2023

Managing data objects for graph-based data structures

Inventors: Ralph A. Korpman (Nashville, TN); Rudy R. Hilado (Leesburg, VA); W. Randal Clegg (Yucaipa, CA); Cindy A. Post (Colton, CA)
Assignee: UnitedHealth Group Incorporated
G06F16/2379G06F9/54G06F9/541G06F16/23G06F16/2358G06F16/244G06F16/245G06F16/288G06F16/367G06F16/81G06F16/9024G06F16/9027G06F16/90335G06F16/9577G06F16/986G06F21/31G06F40/205G06F40/295G06F40/30
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,741,085
App. No.
17/558,653
Granted
Aug 29, 2023
Kind
B2
Abstract

Various embodiments provide methods, systems, apparatus, computer program products, and/or the like for managing, ingesting, monitoring, updating, and/or extracting/retrieving information/data associated with an electronic record (ER) stored in an ER data store and/or accessing information/data from the ER data store, wherein the ERs are generated, updated/modified, and/or accessed via a graph-based domain ontology.

Claims (66)

1. A method for extracting information from a data store, the method comprising:

receiving, by one or more processors, a data artifact packet data object that comprises (a) an entity identifier identifying a subject entity, and (b) one or more ontology concept identifiers corresponding respectively to one or more concepts defined within a graph-based domain ontology, wherein the graph-based domain ontology comprises a specific set or hierarchy of concepts and relationships among the one or more concepts;

generating, by the one or more processors, a container tree data structure comprising a data artifact container node as a root node based at least in part on the data artifact packet data object, wherein (a) the container tree data structure comprises a plurality of container nodes that are descendants of the root node based at least in part on the data artifact packet data object, and (b) each container node of the plurality of container nodes comprises an observable and an empty value for the corresponding observable;

traversing, by the one or more processors, each of the plurality of container nodes of the container tree data structure to retrieve a non-empty value from the data store for the corresponding observable;

after the traversing, processing, by the one or more processors, the container tree data structure to generate at least one observable group comprising the observable of each of the plurality of container nodes and the corresponding non-empty value; and

generating, by the one or more processors and based at least in part on the at least one observable group, an information message comprising the at least one observable group.

2. The method of claim 1 , wherein a hierarchy of container nodes of the container tree data structure is determined based at least in part on the graph-based domain ontology.

3. The method of claim 1 , wherein generating the container tree data structure comprises:

determining a type of container node that should contain an observable corresponding to an ontology concept identifier in the data artifact packet data object;

determining whether a container node having the determined type is present in the container tree data structure; and

responsive to determining that a container node having the determined type is present in the container tree data structure, storing the observable and a corresponding empty value in the container node.

4. The method of claim 1 , wherein generating the container tree data structure comprises:

determining a type of container node that should contain an observable corresponding to an ontology concept identifier in the data artifact packet data object;

determining whether a container node having the determined type is present in the container tree data structure; and

responsive to determining that a container node having the determined type is not present in the container tree data structure:

(a) constructing the container node having the determine type,

(b) storing the observable and a corresponding empty value in the container node, and

(c) inserting the container node into an appropriate position in the container tree data structure, wherein the appropriate position in the container tree data structure is determined based at least in part on the graph-based domain ontology.

5. The method of claim 1 , wherein traversing the container tree data structure comprises aggregating two or more values of a subcontainer node to generate a value of container comprising the subcontainer.

6. The method of claim 1 , wherein the information message is configured to be provided, at least in part, via a portlet for user consumption.

7. The method of claim 1 , wherein traversing the container tree data structure comprises retrieving an originating source vocabulary for the non-empty value for the corresponding observable.

8. The method of claim 1 , further comprising retrieving a confidence score corresponding to at least a portion of an observable group from the data store, wherein the information message comprises the confidence score.

9. A system comprising one or more processors, one or more memory storage areas comprising program code, the one or more memory storage areas and the program code configured to, with the one or more processors, cause the system to at least:

receive a data artifact packet data object that comprises (a) an entity identifier identifying a subject entity, and (b) one or more ontology concept identifiers corresponding respectively to one or more concepts defined within a graph-based domain ontology, wherein the graph-based domain ontology comprises a specific set or hierarchy of concepts and relationships among the one or more concepts;

generate a container tree data structure comprising a data artifact container node as a root node based at least in part on the data artifact packet data object, wherein (a) the container tree data structure comprises a plurality of container nodes that are descendants of the root node based at least in part on the data artifact packet data object, and (b) each container node of the plurality of container nodes comprises an observable and an empty value for the corresponding observable;

traverse each of the plurality of container nodes of the container tree data structure to retrieve a non-empty value from the data store for the corresponding observable;

after the traversing, process the container tree data structure to generate at least one observable group comprising the observable of each of the plurality of container nodes and the corresponding non-empty value; and

generate, based at least in part on the at least one observable group, an information message comprising the at least one observable group.

10. The system of claim 9 , wherein a hierarchy of container nodes of the container tree data structure is determined based at least in part on the graph-based domain ontology.

11. The system of claim 9 , wherein generating the container tree data structure comprises:

determining a type of container node that should contain an observable corresponding to an ontology concept identifier in the data artifact packet data object;

determining whether a container node having the determined type is present in the container tree data structure; and

responsive to determining that a container node having the determined type is present in the container tree data structure, storing the observable and a corresponding empty value in the container node.

12. The system of claim 9 , wherein generating the container tree data structure comprises:

determining a type of container node that should contain an observable corresponding to an ontology concept identifier in the data artifact packet data object;

determining whether a container node having the determined type is present in the container tree data structure; and

responsive to determining that a container node having the determined type is not present in the container tree data structure:

(a) constructing the container node having the determine type,

(b) storing the observable and a corresponding empty value in the container node, and

(c) inserting the container node into an appropriate position in the container tree data structure, wherein the appropriate position in the container tree data structure is determined based at least in part on the graph-based domain ontology.

13. The system of claim 9 , wherein traversing the container tree data structure comprises aggregating two or more values of a subcontainer node to generate a value of container comprising the subcontainer.

14. The system of claim 9 , wherein the information message is configured to be provided, at least in part, via a portlet for user consumption.

15. The system of claim 9 , wherein traversing the container tree data structure comprises retrieving an originating source vocabulary for the non-empty value for the corresponding observable.

16. The system of claim 9 , wherein the one or more memory storage areas and the program code are further configured to, with the one or more processors, cause the system to at least retrieve a confidence score corresponding to at least a portion of an observable group from the data store, wherein the information message comprises the confidence score.

17. A computer program product comprising at least one non-transitory computer-readable storage medium having computer-readable program code stored therein, the computer-readable program code configured to at least:

receive a data artifact packet data object that comprises (a) an entity identifier identifying a subject entity, and (b) one or more ontology concept identifiers corresponding respectively to one or more concepts defined within a graph-based domain ontology, wherein the graph-based domain ontology comprises a specific set or hierarchy of concepts and relationships among the one or more concepts;

generate a container tree data structure comprising a data artifact container node as a root node based at least in part on the data artifact packet data object, wherein (a) the container tree data structure comprises a plurality of container nodes that are descendants of the root node based at least in part on the data artifact packet data object, and (b) each container node of the plurality of container nodes comprises an observable and an empty value for the corresponding observable;

traverse each of the plurality of container nodes of the container tree data structure to retrieve a non-empty value from the data store for the corresponding observable;

after the traversing, process the container tree data structure to generate at least one observable group comprising the observable of each of the plurality of container nodes and the corresponding non-empty value; and

generate, based at least in part on the at least one observable group, an information message comprising the at least one observable group.

18. The computer program product of claim 17 , wherein a hierarchy of container nodes of the container tree data structure is determined based at least in part on the graph-based domain ontology.

19. The computer program product of claim 17 , wherein generating the container tree data structure comprises:

determining a type of container node that should contain an observable corresponding to an ontology concept identifier in the data artifact packet data object;

determining whether a container node having the determined type is present in the container tree data structure; and

responsive to determining that a container node having the determined type is present in the container tree data structure, storing the observable and a corresponding empty value in the container node.

20. The computer program product of claim 17 , wherein generating the container tree data structure comprises:

determining a type of container node that should contain an observable corresponding to an ontology concept identifier in the data artifact packet data object;

determining whether a container node having the determined type is present in the container tree data structure; and

responsive to determining that a container node having the determined type is not present in the container tree data structure:

(a) constructing the container node having the determine type,

(b) storing the observable and a corresponding empty value in the container node, and

(c) inserting the container node into an appropriate position in the container tree data structure, wherein the appropriate position in the container tree data structure is determined based at least in part on the graph-based domain ontology.

21. The computer program product of claim 17 , wherein traversing the container tree data structure comprises aggregating two or more values of a sub container node to generate a value of container comprising the subcontainer.

22. The computer program product of claim 17 , wherein the information message is configured to be provided, at least in part, via a portlet for user consumption.

23. The computer program product of claim 17 , wherein traversing the container tree data structure comprises retrieving an originating source vocabulary for the non-empty value for the corresponding observable.

24. The computer program product of claim 17 , wherein the computer-readable program code is further configured to retrieve a confidence score corresponding to at least a portion of an observable group from the data store, wherein the information message comprises the confidence score.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 22, 2021
From: KORPMAN, RALPH A.; HILADO, RUDY R.; CLEGG, W. RANDAL; POST, CINDY A.
To: UNITEDHEALTH GROUP INCORPORATED
Reel/Frame 058454/0270 →
Continuity (13)
Continuation 16830578 · Mar 26, 2020
Provisional Application 62874638 · Jul 16, 2019
Provisional Application 62873217 · Jul 12, 2019
Provisional Application 62860047 · Jun 11, 2019
Provisional Application 62860031 · Jun 11, 2019
Provisional Application 62860050 · Jun 11, 2019
Provisional Application 62845089 · May 8, 2019
Provisional Application 62845109 · May 8, 2019
Provisional Application 62845085 · May 8, 2019
Provisional Application 62845084 · May 8, 2019
Provisional Application 62828517 · Apr 3, 2019
Provisional Application 62828526 · Apr 3, 2019
Related Publication 20220121651A1 · Apr 21, 2022