IP Library Granted Patent US 9,177,005
Granted Patent B2
US 9,177,005 · App. 13/754,341 · Granted Nov 3, 2015

Resolving in-memory foreign keys in transmitted data packets from single-parent hierarchies

Inventors: Dhaval Manharlal Mehta (Belmont, CA); Jianying Huang (Rocklin, CA)
Assignee: Oracle International Corporation
G06F17/30339G06F17/30923
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 9,177,005
App. No.
13/754,341
Granted
Nov 3, 2015
Kind
B2
Abstract

A method of creating multi-parent relationships from single-parent data may include receiving a data set that includes a plurality of objects organized in a hierarchy. The method may also include parsing the data set to locate at least two objects in the plurality of objects. Each of the at least two objects may be associated with an identifier. The method may additionally include creating a data record to represent information associated with the at least two objects. The data record may be associated with a plurality of parent data records.

Claims (66)

1. A method of creating multi-parent relationships from single-parent data, the method comprising:

receiving a data set that includes a plurality of objects organized in a hierarchy, the plurality of objects comprising:

a first object;

a second object that is associated with an identifier and is a child of the first object according to the hierarchy;

a third object; and

a fourth object that is associated with the identifier and is a child of the third object according to the hierarchy;

ascertaining, based on the identifier, that the second object and the fourth object represent the same information;

creating a second data record from the second object;

creating a first data record from the first object, wherein the first data record references the second data record as a child record; and

creating a third data record from the third object, wherein the third data record references the second data record as a child record.

2. The method of claim 1 further comprising:

discarding the fourth object without requiring a corresponding fourth data record to be created.

3. The method of claim 2 wherein information represented by the second object is different than information represented by the fourth object.

4. The method of claim 3 wherein the information represented by the fourth object is empty.

5. The method of claim 1 wherein the hierarchy comprises a single-parent hierarchy.

6. The method of claim 1 wherein:

the first data record, the second data record, and the third data record are part of a plurality of data records created from the plurality of objects; and

the plurality of data records is arranged in a multi-parent hierarchy.

7. The method of claim 3 wherein the data set comprises an XML format.

8. The method of claim 7 wherein the identifier comprises a value associated with an XML element.

9. The method of claim 4 wherein:

the first data record, the second data record, and the third data record are part of a plurality of data records created from the plurality of objects; and

each of the plurality of data records comprises an entry in one or more relational databases.

10. The method of claim 5 wherein:

the data set is received by an application that is a part of a suite of Enterprise Software Suite (ESS) applications;

the data set is sent from a client system that is part of the ESS; and

the ESS comprises a financial application, a human resource application, and an access manager.

11. The method of claim 6 wherein the second data record is referenced by a foreign key in the first data record and the second data record.

12. The method of claim 1 wherein the data set comprises:

information related to an organization,

contact information,

account information, and

an address.

13. A non-transitory computer-readable memory comprising instructions that, when executed by one or more processors, cause the one or more processors to perform operations comprising:

receiving a data set that includes a plurality of objects organized in a hierarchy, the plurality of objects comprising:

a first object;

a second object that is associated with an identifier and is a child of the first object according to the hierarchy;

a third object; and

a fourth object that is associated with the identifier and is a child of the third object according to the hierarchy;

ascertaining, based on the identifier, that the second object and the fourth object represent the same information;

creating a second data record from the second object;

creating a first data record from the first object, wherein the first data record references the second data record as a child record; and

creating a third data record from the third object, wherein the third data record references the second data record as a child record.

14. The non-transitory computer-readable memory according to claim 13 , wherein the hierarchy comprises a single-parent hierarchy.

15. The non-transitory computer-readable memory according to claim 13 , wherein:

the first data record, the second data record, and the third data record are part of a plurality of data records created from the plurality of objects; and

the plurality of data records is arranged in a multi-parent hierarchy.

16. A system comprising:

one or more processors; and

one or more memories comprising instructions that, when executed by the one or more processors, cause the one or more processors to perform operations comprising:

receiving a data set that includes a plurality of objects organized in a hierarchy, the plurality of objects comprising:

a first object;

a second object that is associated with an identifier and is a child of the first object according to the hierarchy;

a third object; and

a fourth object that is associated with the identifier and is a child of the third object according to the hierarchy;

ascertaining, based on the identifier, that the second object and the fourth object represent the same information;

creating a second data record from the second object;

creating a first data record from the first object, wherein the first data record references the second data record as a child record; and

creating a third data record from the third object, wherein the third data record references the second data record as a child record.

17. The system of claim 16 wherein the hierarchy comprises a single-parent hierarchy.

18. The non-transitory computer-readable memory of claim 13 further comprising additional instruction that, when executed by the one or more processors, cause the one or more processors to perform additional operations comprising:

discarding the fourth object without requiring a corresponding fourth data record to be created.

19. The non-transitory computer-readable memory of claim 13 wherein:

the first data record, the second data record, and the third data record are part of a plurality of data records created from the plurality of objects; and

each of the plurality of data records comprises an entry in one or more relational databases.

20. The non-transitory computer-readable memory of claim 13 wherein the second data record is referenced by a foreign key in the first data record and the second data record.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 31, 2013
From: MEHTA, DHAVAL MANHARLAL; HUANG, JIANYING
To: ORACLE INTERNATIONAL CORPORATION
Reel/Frame 029732/0286 →
Continuity (1)
Related Publication 20140214902A1 · Jul 31, 2014