IP Library › Granted Patent US 12,380,151
Granted Patent B1
US 12,380,151 · App. 17/563,745 · Granted Aug 5, 2025

Semantic translation of data sets

Inventors: David Newman (Walnut Creek, CA); Omar B. Khan (Richmond, VA)
Assignee: Wells Fargo Bank, N.A.
G06F16/367G06F16/284G06F16/334
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,380,151
App. No.
17/563,745
Granted
Aug 5, 2025
Kind
B1
Abstract

A method may include accessing a semantic map between a schema of a relational database (RDB) and a resource description framework (RDF) data model, the semantic map defined according to a first semantic ontology; applying the semantic map to data loaded from the RDB to generate a first set of semantic objects; storing the first set of semantic objects in a staging RDF triplestore; executing a script to transform the first set of semantic objects into a second set of semantic objects according to a second semantic ontology; and storing the second set of semantic objects into a production RDF triplestore.

Claims (59)

1. A method comprising:

accessing a semantic map between a schema of a relational database (RDB) and a resource description framework (RDF) data model, the semantic map defined according to a first semantic ontology;

applying the semantic map to data loaded from the RDB to generate a first set of semantic objects;

storing the first set of semantic objects in a staging RDF triplestore; and

executing a script to transform the first set of semantic objects into a second set of semantic objects according to a second semantic ontology, wherein executing the script includes:

accessing a transitive map that identifies mappings between objects defined in the first semantic ontology to subjects defined in the second semantic ontology;

storing the second set of semantic objects into a production RDF triplestore;

querying the staging RDF triplestore for a code associated with a semantic object of the first set of semantic objects, wherein the code is an object defined in the first semantic ontology;

looking up the code in the transitive map to determine a type of object linked to the code, the type of object being defined as a subject of the second semantic ontology; and

generating a semantic object according to the type of object.

2. The method of claim 1 , further comprising:

generating a second semantic object based on a foreign key of a column of the RDB.

3. The method of claim 1 , wherein the first semantic ontology defines subjects and respective objects associated with the subjects and wherein the second semantic ontology defines subjects and respective objects associated with the subjects in the second semantic ontology.

4. The method of claim 1 , further comprising:

deleting the staging RDF triplestore after creation of the production RDF triplestore.

5. The method of claim 1 , wherein the transitive map is stored as part of the script.

6. The method of claim 1 , further comprising:

automatically updating the production RDF triplestore using the script on a periodic basis.

7. The method of claim 1 , further comprising:

generating a visualization of the production RDF triplestore.

8. A system comprising:

at least one processor; and

a storage device comprising instructions, which when executed by the at least one processor, configure the at least one processor to perform operations comprising:

accessing a semantic map between a schema of a relational database (RDB) and a resource description framework (RDF) data model, the semantic map defined according to a first semantic ontology;

applying the semantic map to data loaded from the RDB to generate a first set of semantic objects;

storing the first set of semantic objects in a staging RDF triplestore; and

executing a script to transform the first set of semantic objects into a second set of semantic objects according to a second semantic ontology, wherein executing the script includes:

accessing a transitive map that identifies mappings between objects defined in the first semantic ontology to subjects defined in the second semantic ontology;

storing the second set of semantic objects into a production RDF triplestore;

querying the staging RDF triplestore for a code associated with a semantic object of the first set of semantic objects, wherein the code is an object defined in the first semantic ontology; looking up the code in the transitive map to determine a type of object linked to the code, the type of object being defined as a subject of the second semantic ontology; and

generating a semantic object according to the type of object.

9. The system of claim 8 , wherein the instructions, when executed by the at least one processor, further configure the at least one processor to:

generating a second semantic object based on a foreign key of a column of the RDB.

10. The system of claim 8 , wherein the first semantic ontology defines subjects and respective objects associated with the subjects and wherein the second semantic ontology defines subjects and respective objects associated with the subjects in the second semantic ontology.

11. The system of claim 8 , wherein the instructions, when executed by the at least one processor, further configure the at least one processor to:

deleting the staging RDF triplestore after creation of the production RDF triplestore.

12. The system of claim 8 , wherein the transitive map is stored as part of the script.

13. The system of claim 8 , wherein the instructions, when executed by the at least one processor, further configure the at least one processor to:

automatically updating the production RDF triplestore using the script on a periodic basis.

14. The system of claim 8 , wherein the instructions, when executed by the at least one processor, further configure the at least one processor to:

generating a visualization of the production RDF triplestore.

15. A non-transitory computer-readable medium comprising instructions, which when executed by at least one processor, configure the at least one processor to perform operations comprising:

accessing a semantic map between a schema of a relational database (RDB) and a resource description framework (RDF) data model, the semantic map defined according to a first semantic ontology;

applying the semantic map to data loaded from the RDB to generate a first set of semantic objects;

storing the first set of semantic objects in a staging RDF triplestore; and

executing a script to transform the first set of semantic objects into a second set of semantic objects according to a second semantic ontology, wherein executing the script includes:

accessing a transitive map that identifies mappings between objects defined in the first semantic ontology to subjects defined in the second semantic ontology;

storing the second set of semantic objects into a production RDF triplestore;

querying the staging RDF triplestore for a code associated with a semantic object of the first set of semantic objects, wherein the code is an object defined in the first semantic ontology;

looking up the code in the transitive map to determine a type of object linked to the code, the type of object being defined as a subject of the second semantic ontology; and

generating a semantic object according to the type of object.

16. The non-transitory computer-readable medium of claim 15 , wherein the instructions, when executed by the at least one processor, further configure the at least one processor to:

generating a second semantic object based on a foreign key of a column of the RDB.

17. The non-transitory computer-readable medium of claim 15 , wherein the first semantic ontology defines subjects and respective objects associated with the subjects and wherein the second semantic ontology defines subjects and respective objects associated with the subjects in the second semantic ontology.

18. The non-transitory computer-readable medium of claim 15 , wherein the instructions, when executed by the at least one processor, further configure the at least one processor to:

deleting the staging RDF triplestore after creation of the production RDF triplestore.

19. The non-transitory computer-readable medium of claim 15 , wherein the transitive map is stored as part of the script.

20. The non-transitory computer-readable medium of claim 15 , wherein the instructions, when executed by the at least one processor, further configure the at least one processor to:

automatically updating the production RDF triplestore using the script on a periodic basis.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 8, 2022
From: NEWMAN, DAVID; KHAN, OMAR B
To: WELLS FARGO BANK, N.A.
Reel/Frame 058916/0635 →
Continuity (2)
Continuation 15645574 · Jul 10, 2017
Provisional Application 62441079 · Dec 30, 2016
References Cited (78)
US 8793198B1 · Thomas · 2014 [cited by applicant]
US 9196007B1 · Thomas · 2015 [cited by applicant]
US 9325791B1 · Blahaerath · 2016 [cited by examiner]
US 10489419B1 · Newman et al. · 2019 [cited by applicant]
US 11238084B1 · Newman et al. · 2022 [cited by applicant]
US 11238115B1 · Newman · 2022 [cited by applicant]
US 20020022956A1 · Ukrainczyk et al. · 2002 [cited by applicant]
US 20030078825A1 · Cope · 2003 [cited by applicant]
US 20040095380A1 · Bass et al. · 2004 [cited by applicant]
US 20060206883A1 · Sabbouh · 2006 [cited by applicant]
US 20070079236A1 · Schrier et al. · 2007 [cited by applicant]
US 20070130117A1 · Lapstun et al. · 2007 [cited by applicant]
US 20070260591A1 · Ahi · 2007 [cited by applicant]
US 20080270458A1 · Gvelesiani · 2008 [cited by applicant]
US 20090106234A1 · Siedlecki et al. · 2009 [cited by applicant]
US 20100185637A1 · Morris et al. · 2010 [cited by applicant]
US 20120023055A1 · Dagaeff · 2012 [cited by applicant]
US 20120131189A1 · Smart et al. · 2012 [cited by applicant]
US 20120303611A1 · Kusumura et al. · 2012 [cited by applicant]
US 20120323741A1 · Rangachari et al. · 2012 [cited by applicant]
US 20130054621A1 · Kretz et al. · 2013 [cited by applicant]
US 20130080461A1 · Byrne et al. · 2013 [cited by applicant]
US 20130262501A1 · Kuchmann-beauger et al. · 2013 [cited by applicant]
US 20130290226A1 · Dokken · 2013 [cited by applicant]
US 20140018034A1 · Lindberg · 2014 [cited by applicant]
US 20140025643A1 · Baldwin et al. · 2014 [cited by applicant]
US 20140040275A1 · Dang et al. · 2014 [cited by applicant]
US 20140156638A1 · Joshi et al. · 2014 [cited by applicant]
US 20140236579A1 · Kurz · 2014 [cited by applicant]
US 20150012561A1 · Kirchoff · 2015 [cited by applicant]
US 20150127632A1 · Khaitan et al. · 2015 [cited by applicant]
US 20150178853A1 · Byron et al. · 2015 [cited by applicant]
US 20150286486A1 · Smith, III · 2015 [cited by examiner]
US 20150332670A1 · Akbacak et al. · 2015 [cited by applicant]
US 20150347533A1 · Shakirzianov et al. · 2015 [cited by applicant]
US 20160078016A1 · Ng Tari et al. · 2016 [cited by applicant]
US 20160110389A1 · Oltman et al. · 2016 [cited by applicant]
US 20160196360A1 · Best et al. · 2016 [cited by applicant]
US 20170024657A1 · Sahu et al. · 2017 [cited by applicant]
US 20170061001A1 · Tonkin et al. · 2017 [cited by applicant]
US 20170083547A1 · Tonkin et al. · 2017 [cited by applicant]
US 20170177642A1 · Burger et al. · 2017 [cited by applicant]
US 20170185674A1 · Tonkin · 2017 [cited by examiner]
Anastasia Dimou, Mapping Hierarchical Sources into RDF using the RML Mapping Language, IEEE, 151-156 (Year: 2014). [cited by examiner]
U.S. Appl. No. 17/565,371, filed Dec. 29, 2021, Population of Online Forms Based on Semantic and Context Search. [cited by applicant]
“U.S. Appl. No. 15/471,728, Non Final Office Action mailed Feb. 7, 2019”, 9 pgs. [cited by applicant]
“U.S. Appl. No. 15/471,728, Notice of Allowance mailed Jul. 18, 2019”, 7 pgs. [cited by applicant]
“U.S. Appl. No. 15/471,728, Response filed May 7, 2019 to Non Final Office Action mailed Feb. 7, 2019”, 9 pgs. [cited by applicant]
“U.S. Appl. No. 15/645,574, Advisory Action mailed Feb. 3, 2020”, 3 pgs. [cited by applicant]
“U.S. Appl. No. 15/645,574, Final Office Action mailed Oct. 29, 2019”, 10 pgs. [cited by applicant]
“U.S. Appl. No. 15/645,574, Non Final Office Action mailed Apr. 5, 2019”, 11 pgs. [cited by applicant]
“U.S. Appl. No. 15/645,574, Non Final Office Action mailed May 5, 2021”. [cited by applicant]
“U.S. Appl. No. 15/645,574, Notice of Allowance mailed Nov. 23, 2021”, 15 pgs. [cited by applicant]
“U.S. Appl. No. 15/645,574, Response filed Apr. 3, 2020 to Advisory Action mailed Feb. 3, 2020”. [cited by applicant]
“U.S. Appl. No. 15/645,574, Response filed Jul. 3, 2019 to Non Final Office Action mailed Apr. 5, 2019”, 10 pgs. [cited by applicant]
“U.S. Appl. No. 15/645,574, Response filed Aug. 5, 2021 to Non Final Office Action mailed May 5, 2021”. [cited by applicant]
“U.S. Appl. No. 15/645,574, Response filed Dec. 30, 2019 to Final Office Action mailed Oct. 29, 2019”, 10 pgs. [cited by applicant]
“U.S. Appl. No. 15/645,582, Advisory Action mailed Feb. 17, 2021”, 3 pgs. [cited by applicant]
“U.S. Appl. No. 15/645,582, Corrected Notice of Allowability mailed Oct. 27, 2021”, 3 pgs. [cited by applicant]
“U.S. Appl. No. 15/645,582, Final Office Action mailed Oct. 3, 2019”, 12 pgs. [cited by applicant]
“U.S. Appl. No. 15/645,582, Final Office Action mailed Dec. 7, 2020”. [cited by applicant]
“U.S. Appl. No. 15/645,582, Non Final Office Action mailed Apr. 5, 2019”, 11 pgs. [cited by applicant]
“U.S. Appl. No. 15/645,582, Non Final Office Action mailed Apr. 14, 2021”, 24 pgs. [cited by applicant]
“U.S. Appl. No. 15/645,582, Non Final Office Action mailed Jul. 13, 2020”. [cited by applicant]
“U.S. Appl. No. 15/645,582, Notice of Allowance mailed Oct. 5, 2021”, 16 pgs. [cited by applicant]
“U.S. Appl. No. 15/645,582, Response filed Jan. 2, 2020 to Final Office Action mailed Oct. 3, 2019”, 19 pgs. [cited by applicant]
“U.S. Appl. No. 15/645,582, Response filed Feb. 8, 2021 to Final Office Action mailed Dec. 7, 2020”, 17 pgs. [cited by applicant]
“U.S. Appl. No. 15/645,582, Response filed Jul. 5, 2019 to Non-Final Office Action mailed Apr. 5, 2019”, 9 pgs. [cited by applicant]
“U.S. Appl. No. 15/645,582, Response filed Jul. 14, 2021 to Non Final Office Action mailed Apr. 14, 2021”. [cited by applicant]
“U.S. Appl. No. 15/645,582, Response filed Aug. 31, 2020 to Non Final Office Action mailed Jul. 13, 2020”, 13 pgs. [cited by applicant]
Das, Souripriya, et al., “R2RML: RDB to RDF Mapping Language”, (Sep. 17, 2012), 39 pgs. [cited by applicant]
Dimou, Anastasia, et al., “Mapping Hierarchical Sources into RDF using the RML Mapping Language”, (May 20, 2015), 8 pgs. [cited by applicant]
“U.S. Appl. No. 17/565,371, Final Office Action mailed Jan. 23, 2023”, 23 pgs. [cited by applicant]
“U.S. Appl. No. 17/565,371, Non Final Office Action mailed Sep. 28, 2022”, 21 pgs. [cited by applicant]
“U.S. Appl. No. 17/565,371, Response filed Mar. 23, 2023 to Final Office Action mailed Jan. 23, 2023”, 12 pgs. [cited by applicant]
“U.S. Appl. No. 17/565,371, Response filed Dec. 20, 2022 to Non Final Office Action mailed Sep. 28, 2022”, 11 pgs. [cited by applicant]
“U.S. Appl. No. 17/565,371, Advisory Action mailed Apr. 5, 2023”, 3 pgs. [cited by applicant]
“U.S. Appl. No. 17/565,371, Notice of Allowance mailed May 17, 2023”, 14 pgs. [cited by applicant]