IP Library Granted Patent US 12,436,930
Granted Patent B1
US 12,436,930 · App. 18/677,661 · Granted Oct 7, 2025

Database management techniques with controlling documents

Inventors: Erica Emelie Ivarsson (Berlin, DE); Tushara Devi Bhogadi Ravishankar (Kaiserslautern, DE); Niklas Weidenfeller (Mannheim, DE); Millie Lou (Vancouver, CA); Yingying Cao (Karlsruhe, DE); Marie-Luise Wagener-Kirchner (Hemsbach, DE); Paul Petraschk (Vetschau/Spreewald, DE); Kartikaye Gomber (Chester Springs, PA); Cornelius Bock (Berlin, DE); Abhishek V Tatachar (Bangalore, IN); Dinh Gia Bao Dang (Philadelphia, PA); Angelo Scherthan (Philippsburg, DE)
Assignee: SAP SE
G06F16/217G06F16/2379G06F16/284G06F16/93
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,436,930
App. No.
18/677,661
Granted
Oct 7, 2025
Kind
B1
Abstract

Methods and systems are disclosed for database management with controlling documents. Tasks addressed include: identification of requirements in the documents, tracking changes as documents evolve, mapping documents or requirements to database entries, identifying gaps between documents and the database, and proposing database updates. Disclosed embodiments address these tasks using a combination of sequential program logic, machine-learning tools, and client interaction. Workflows address one or more tasks. Examples pertaining to regulatory documents are presented. Variations are disclosed.

Claims (106)

1. A computer-implemented method, comprising:

(a) providing a regulation, in augmented form, to a first trained machine-learning tool;

(b) receiving, from the first trained machine-learning tool, a plurality of candidate control keys extracted from the regulation;

(c) providing the plurality of candidate control keys to a client;

(d) receiving, from the client, approval of at least a predetermined number of the candidate control keys;

(e) providing the approved candidate control keys to a second trained machine-learning tool;

(f) receiving, from the second trained machine-learning tool, a formula which distinguishes control keys within the regulation;

(g) identifying, according to the formula, a plurality of control keys from the regulation; and

for each of the identified control keys:

(h) outputting a respective record comprising the respective control key.

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

prior to act (a), receiving a request from the client to extract controls from the regulation;

wherein, at act (h), the respective record is outputted to the client.

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

based on the control keys identified at act (g), identifying a plurality of candidate pairs, each pair having a respective one of the identified control keys and a respective candidate control title;

providing the plurality of candidate pairs to the client;

receiving, from the client, approval of at least a second predetermined number of the candidate pairs; and

based on augmentation of the approved candidate pairs, identifying respective control titles for others of the identified control keys;

wherein the respective record includes a first field storing the respective control key and a second field comprising the respective control title.

4. The computer-implemented method of claim 3 , wherein the respective candidate control title is identified:

from a table of contents in the regulation; or

using the first trained machine learning tool.

5. The computer-implemented method of claim 3 , further comprising, for each of the identified control keys:

determining a content endpoint based on one or more content termination criteria; and

identifying, as respective content, material following the respective control title in the regulation up to the content endpoint;

wherein the respective record includes a third field comprising the respective content or a locator for the respective content.

6. The computer-implemented method of claim 5 , wherein the content termination criteria comprise one or more of:

a subsequent control key;

a predetermined discontinuity in text augmentation; or

an end of the regulation.

7. The computer-implemented method of claim 1 , wherein the regulation in augmented form comprises a table of contents, and the method further comprises:

generating the table of contents.

8. The computer-implemented method of claim 1 , wherein act (d) further comprises:

receiving, from the client, rejection of one or more of the candidate control keys.

9. The computer-implemented method of claim 1 , further comprising, subsequent to operation (g):

reporting, to the client:

at least some of the identified control keys; and

any of the candidate control keys rejected by the formula;

prompting the client to make a selection;

receiving the selection from the client; and

responsive to the selection indicating a retry, repeating operations (d) through (g).

10. The computer-implemented method of claim 1 , further comprising, identifying sub-controls of one or more of the identified control keys.

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

(j) for a given one of the identified control keys, obtaining a client's approval of a split comprising one or more candidate sub-controls;

(k) executing a program corresponding to the approved split to identify sub-controls over a plurality of controls of the regulation, each sub-control having a respective sub-control key; and

for each of the identified sub-controls:

(l) outputting a respective sub-control record comprising the respective sub-control key.

12. The computer-implemented method of claim 11 , further comprising:

prior to act (j):

identifying one or more features in content associated with the given control key;

identifying the one or more candidate sub-controls based on the feature(s); and

generating the split based according to the candidate sub-controls; and

subsequent to act (j) and prior to act (k):

providing the split to a third trained machine-learning tool; and

receiving the program from the third trained machine-learning tool.

13. The computer-implemented method of claim 11 , further comprising, prior to act (j):

selecting one among a library of programs;

executing the selected program on content associated with the given control key to obtain the split; and

prompting the client for the approval;

wherein the program executed at act (k) is the selected program.

14. The computer-implemented method of claim 11 , further comprising, for each of the identified sub-controls:

determining a content endpoint based on one or more content termination criteria; and

identifying, as respective content, material following the respective sub-control key in the regulation up to the content endpoint;

wherein the respective sub-control record comprises a first field storing the respective sub-control key and a second field storing the respective content or a locator for the respective content.

15. One or more computer-readable media storing instructions which, when executed on one or more hardware processors, cause the one or more hardware processors to perform operations comprising:

for a given requirement of a regulation, the given requirement having corresponding content:

condensing the content to obtain a plurality of keywords;

extracting a plurality of text fragments from the content; and

computing respective first vector embeddings of each of the text fragments;

for each entry, having respective content, of a plurality of entries of an implementation database:

computing, using one or more keyword search procedures, corresponding one or more first scores between (i) the plurality of keywords and (ii) the respective content;

computing, using one or more semantic search procedures, corresponding one or more second scores between (iii) the plurality of text fragments and (iv) the respective content; and

combining the one or more first scores and the one or more second scores to obtain a composite score;

ranking the entries according to their respective composite scores;

selecting a highest-ranking subset of the ranked entries;

outputting a key of the given requirement; and

outputting, for each entry in the highest-ranking subset, an identifier of the entry and the respective composite score.

16. The one or more computer-readable media of claim 15 , wherein the combining operation for the respective entry comprises:

for each of the one or more keyword search procedures:

calculating a first offsetted rank of the corresponding first score of the respective entry, among the first scores of the plurality of entries; and

for each of the one or more semantic search procedures:

calculating a second offsetted rank of the corresponding second score of the respective entry, among the second scores of the plurality of entries; and

summing reciprocals of the one or more first offsetted ranks and reciprocals of the one or more second offsetted ranks to obtain the composite score of the respective entry.

17. The one or more computer-readable media of claim 15 , wherein one of the one or more keyword search procedures returns a Jaccard similarity measure.

18. The one or more computer-readable media of claim 15 , wherein at least one of the one or more semantic search procedures operates on text fragments which are sentences.

19. A system, comprising:

one or more hardware processors, with memory coupled thereto;

computer-readable media storing program instructions executable by the one or more hardware processors, the program instructions comprising:

first instructions which, when executed, cause the one or more hardware processors to:

(a) identify a plurality of requirements within a document; and

(b) for each of the identified requirements, store, in an extraction database, a respective first record comprising a key and a content data item;

second instructions which, when executed, cause the one or more hardware processors to:

for each of a plurality of the identified requirements:

(c) select, according to a predetermined criterion, one or more entries of an implementation database providing coverage of the respective identified requirement;

(d) output respective record(s) identifying each selected entry and a respective coverage score; and

(e) classify the respective identified requirement according to its respective coverage score; and

third instructions which, when executed, cause the one or more hardware processors to:

for a given one of the identified requirements identified not classified as covered:

(g) determine a proposed update to the implementation database;

(h) prompt a client for approval of the proposed update; and

(i) upon receiving the approval, implement the proposed update.

20. The system of claim 19 , wherein the program instructions further comprise:

fourth instructions which, when executed, cause the one or more hardware processors to:

(j) compare a plurality of new requirements in a new version of the document with corresponding old requirements in an earlier version of the document;

(k) determine classifications of the new requirements based on a result of the comparing; and

(l) store the classifications.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 3, 2024
From: IVARSSON, ERICA EMELIE; BHOGADI RAVISHANKAR, TUSHARA DEVI; WEIDENFELLER, NIKLAS; LOU, MILLIE; CAO, YINGYING; WAGENER-KIRCHNER, MARIE-LUISE; PETRASCHK, PAUL; GOMBER, KARTIKAYE; BOCK, CORNELIUS; TATACHAR, ABHISHEK V; DANG, DINH GIA BAO; SCHERTHAN, ANGELO
To: SAP SE
Reel/Frame 067603/0328 →
References Cited (35)
US 8209278B1 · Straus · 2012 [cited by applicant]
US 8370272B2 · Wickel · 2013 [cited by examiner]
US 8914309B2 · Pham · 2014 [cited by examiner]
US 10445571B1 · Gaeta · 2019 [cited by examiner]
US 10698938B2 · Miracolo · 2020 [cited by examiner]
US 11615637B1 · Gaeta · 2023 [cited by examiner]
US 11630881B2 · Greven et al. · 2023 [cited by applicant]
US 11971889B2 · Won · 2024 [cited by examiner]
US 20100079781A1 · Yamamoto · 2010 [cited by examiner]
US 20100268740A1 · Barker · 2010 [cited by examiner]
US 20110246391A1 · Henderson · 2011 [cited by examiner]
US 20130090977A1 · Zeng et al. · 2013 [cited by applicant]
US 20140032633A1 · Kleppner · 2014 [cited by examiner]
US 20140033013A1 · Shaver · 2014 [cited by examiner]
US 20140149857A1 · Vagell · 2014 [cited by examiner]
US 20140280070A1 · George · 2014 [cited by examiner]
US 20140372370A1 · Massand · 2014 [cited by applicant]
US 20170103230A1 · O'Brien · 2017 [cited by examiner]
US 20200111023A1 · Pondicherry Murugappan et al. · 2020 [cited by applicant]
US 20200151279A1 · Haberstroh · 2020 [cited by examiner]
US 20200349130A1 · Bracholdt · 2020 [cited by examiner]
US 20210357392A1 · Bulut et al. · 2021 [cited by applicant]
US 20220083520A1 · Malamut · 2022 [cited by examiner]
US 20220171965A1 · Kumar · 2022 [cited by examiner]
US 20220309037A1 · Gutierrez et al. · 2022 [cited by applicant]
US 20230111877A1 · Toebben · 2023 [cited by applicant]
US 20230306134A1 · Milind et al. · 2023 [cited by applicant]
US 20230334025A1 · Halko · 2023 [cited by applicant]
US 20240330605A1 · Hunn · 2024 [cited by examiner]
US 20250254036A1 · Sitrick · 2025 [cited by examiner]
Metricstream, “What is Regulatory Change Management?,” downloaded from https://www.metricstream.com/learn/what-is-regulatory-change-management.html on Aug. 11, 2025, also available on Wayback Machine, pp. 1-6. [cited by applicant]
Ravindranathan, “Regulatory Change Manager: Your Solution to Navigate Regulatory Changes with Ease,” available from https://community.sap.com/t5/enterprise-resource-planning-blogs-by-sap/regulatory-change-manager-your-s… [cited by applicant]
Ravindranathan, Screenshot from https://dam.sap.com/mac/app/e/video/embed/EV81yCn?ltr=a&rc=10&includeSapBrandedWraper=true&includeRelatedAssets=true at 18:58, 1 page (Mar. 2024). [cited by applicant]
SAP, “Process Control,” downloaded Mar. 17, 2024, from https://www.sap.com/products/financial-management/internal-control.html, pp. 1-10. [cited by applicant]
SAP, “What is governance, risk, and compliance (GRC)?” downloaded Mar. 17, 2024 from https://www.sap.com/products/financial-management/what-is-grc.html, pp. 1-6. [cited by applicant]