# US 12,308,115 B2 · Automated data aggregation with file analysis and predictive modeling

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 12,308,115 B2
- Document ID: US12308115B2
- Status: Granted
- Kind: B2
- Application number: 17/694,504
- Filed: 2022-03-14
- Published: 2022-09-15
- Granted: 2025-05-20
- Earliest claimed: 2021-03-12
- Assignees: Prefcards LLC
- Applicants: Prefcards LLC
- Inventors: Paul Reynolds; Brandon Reynolds; Neil McGuire; Chad Ramos
- Web page: https://patentgrep.com/patent/US12308115B2

## CPC

- G16H 40/20: for the management or administration of healthcare resources or facilities, e.g. managing hospital staff or surgery rooms
- G06F 3/0482: Interaction with lists of selectable items, e.g. menus
- G06F 3/04842: Selection of displayed objects or displayed text elements (G06F3/0482 takes precedence)
- G06F 40/134: Hyperlinking
- G06F 40/166: Editing, e.g. inserting or deleting
- G06F 40/279: Recognition of textual entities
- G06V 30/1448: {based on markings or identifiers characterising the document or the area}
- G06V 30/153: {using recognition of characters or words}
- G06V 30/19013: {Comparing pixel values or logical combinations thereof, or feature values having positional relevance, e.g. template matching (specially adapted for image segmentation G06T7/10; specially adapted for the analysis of motion G06T7/20; specially adapted for image alignment G06T7/30; specially adapted for the calculation of depth from stereo images G06T7/50; specially adapted for position determination G06T7/70)}
- G06V 30/19173: {Classification techniques}
- G16H: HEALTHCARE INFORMATICS, i.e. INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR THE HANDLING OR PROCESSING OF MEDICAL OR HEALTHCARE DATA
- G06F: ELECTRIC DIGITAL DATA PROCESSING (computer systems based on specific computational models G06N)
- G06V: IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING

## Abstract

Systems, methods, and devices for data ingestion and aggregation, file analysis, and predictive modeling. A method includes ingesting an unstructured file comprising text. The method includes providing the unstructured file to a file analysis machine learning algorithm configured to execute optical character recognition processing to identify one or more textual characters in the unstructured file. The method includes assigning the one or more identified textual characters to a data bucket associated with an aggregated data form. The method includes generating a virtual file comprising information from the aggregated data form, wherein the virtual file comprises structured data and unstructured data.

## Claims

### Claim 1

A method of collecting, aggregating, and analyzing data, the method comprising:
ingesting an unstructured file comprising text;
mapping the unstructured file to a primary aggregated data form, wherein the primary aggregated data form is mapped to a tenant on a cloud-based database;
creating a unique user pool for the primary aggregated data form to provide data isolation security to the primary aggregated data form, wherein users within the unique user pool have permissions to access the primary aggregated data form;
translating the unstructured file to a computer-readable file by causing a file analysis machine learning algorithm to execute optical character recognition processing on the unstructured file to identify textual characters in the unstructured file;
classifying content of a plurality of words or phrases within the computer-readable file by cross-referencing the plurality of words or phrases against known vocabulary, wherein the plurality of words or phrases comprises a name of a device;
scraping web data from a webpage by communicating directly with the webpage and executing a web script to render the webpage as a simulated user interaction, wherein the scraped web data pertains to the device;
comparing the scraped web data to applicable stored data to determine whether a discrepancy exists between the scraped web data and the applicable stored data, wherein the applicable stored data pertains to the device;
in response to identifying the discrepancy between the scraped web data and the applicable stored data, resolving the discrepancy by updating the applicable stored data to comprise the scraped web data;
assigning the plurality of words or phrases from the computer-readable file to one or more data buckets associated with the primary aggregated data form based on the content classification, wherein the primary aggregated data form is stored on the cloud-based database, and wherein the primary aggregated data form comprises at least one device data bucket assigned to receive the name of the device;
replicating the primary aggregated data form to generate one or more facility aggregated data forms, wherein each of the one or more facility aggregated data forms is customizable relative to the primary aggregated data form, and wherein each of the one or more facility aggregated data forms is stored on the database;
generating a summary file comprising information from the primary aggregated data form, wherein the summary file comprises structured data and unstructured data;
identifying a facility where the summary file will be utilized;
retrieving the name of the device from the device data bucket for the aggregated data form;
cross-referencing the name of the device against the applicable stored data pertaining to the device to identify one or more products associated with the device;
electronically communicating with an inventory management solution associated with the facility to determine whether any of the one or more products is available at the facility; and
electronically communicating with an invoicing system associated with the facility to determine an itemized cost of at least a portion of the one or more products when utilized at the facility.

### Claim 2 (depends on 1)

The method of claim 1, wherein the primary aggregated data form comprises a plurality of independent data buckets;
wherein each of the plurality of independent data buckets is configured to receive data of a certain file type and a certain content; and
wherein the process of assigning the name of the device to the at least one device data bucket comprises identifying a correct data bucket for the device.

### Claim 3 (depends on 1)

The method of claim 1, wherein the summary file comprises one or more of a collection of data accessible on a user interface, a collection of data accessible on a web page, or a file stored in a portable document format.

### Claim 4 (depends on 1)

The method of claim 1, wherein scraping the web data from the webpage comprises extracting structured data from the webpage, and wherein the scraped structured data comprises one or more of:
one or more products applicable to the name of the device;
regulatory approval status associated with the one or more products;
current pricing for the one or more products;
current availability for the one or more products; or
safety rating for the one or more products.

### Claim 5 (depends on 1)

The method of claim 1, wherein the primary aggregated data form comprises information for a surgical preference card, and wherein the method further comprises:
storing the primary aggregated data form associated with a healthcare system, wherein the healthcare system comprises a plurality of surgical facilities;
storing a plurality of facility aggregated data forms, wherein each of the plurality of facility aggregated data forms is associated with one facility of the plurality of surgical facilities in the healthcare system; and
updating each of the plurality of facility aggregated data forms when the primary aggregated data form is updated.

### Claim 6 (depends on 1)

The method of claim 1, wherein the optical character recognition processing performed by the file analysis machine learning algorithm comprises:
identifying a boundary between a bright pixel region and a dark pixel region;
classifying the bright pixel region as background; and
processing the dark pixel region to identify a textual character, wherein the textual character comprises one or more of a letter, number, emoji, or punctuation character.

### Claim 7 (depends on 1)

The method of claim 1, wherein the primary aggregated data form comprises a plurality of data buckets, and wherein one or more of the plurality of data buckets is a required data bucket that must be filled with data for the aggregated data form to be complete, and wherein the method further comprises:
determining whether the primary aggregated data form is complete based on whether each of the required data buckets is filled; and
in response to determining that each of the required data buckets is filled, generating a message querying a user whether the primary aggregated data bucket is complete.

### Claim 8 (depends on 1)

The method of claim 1, wherein the primary aggregated data form comprises digital information for a surgical preference card, and wherein the unstructured file comprises a depiction of a completed preference card, and wherein the depiction of the completed preference card comprises one or more of:
an image, scan, or portable document format (PDF) of a handwritten surgical preference card;
an image, scan, or PDF of a printed surgical preference card; or
an image, scan, or PDF of a digital surgical preference card.

### Claim 9 (depends on 1)

The method of claim 1, further comprising rendering a user interface accessible to a user, wherein the user interface comprises:
a dropdown listing of a plurality of items listed on a surgical preference card, wherein the dropdown listing comprises functionality enabling the user to expand or diminish the dropdown listing;
a hyperlink associated with one or more of the plurality of items in the dropdown listing, wherein the hyperlink directs to a means for ordering the corresponding item;
a text box associated with one or more of the plurality of items in the dropdown listing, wherein the text box comprises a means for a user to input a quantity of the corresponding item; and
a button associated with one or more of the plurality of items in the dropdown listing, wherein the button comprises a means for a user to delete the corresponding item from the surgical preference card.

### Claim 10 (depends on 1)

The method of claim 1, further comprising:
identifying one or more facility aggregated data forms that are associated with the primary aggregated data form;
determining whether any of the one or more facility aggregated data forms is inconsistent with information stored on the primary aggregated data form; and
in response to determining that at least one of the one or more facility aggregated data forms is inconsistent with the primary aggregated data form, updating the at least one facility aggregated data form to comprise the same data associated with the primary aggregated data form.

### Claim 11 (depends on 1)

The method of claim 1, wherein generating the summary file further comprises generating a machine-readable code, and wherein the machine-readable code stores an address or uniform resource locator (“URL”) for retrieving the summary file.

### Claim 12 (depends on 11)

The method of claim 11, further comprising:
scanning the machine-readable code of the summary file;
retrieving the summary file based on the address or the URL stored in the machine-readable code;
reading the structured data stored on the summary file, wherein the structured data comprises a listing of products; and
communicating with the inventory management solution to automatically retrieve one or more products in the listing of products.

### Claim 13 (depends on 1)

The method of claim 1, wherein the inventory management solution comprises one or more robotic components for tracking and disbursing products located at the facility.

### Claim 14 (depends on 1)

The method of claim 1, further comprising:
identifying which of the one or more products comprises a lowest itemized price; and
automatically updating the summary file to comprise the identified product with the lowest itemized price.

### Claim 15 (depends on 14)

The method of claim 14, further comprising:
receiving updated data applicable to the device, wherein the updated data is scraped from the webpage;
processing the updated data to determine whether any new product is associated with the device;
in response to identifying the new product, electronically communicating with the inventory management solution to determine whether the new product is available at the facility; and
in response to identifying the new product, electronically communicating with the invoicing system to determine an itemized cost of the new product when utilized at the facility.

### Claim 16 (depends on 1)

The method of claim 1, wherein the aggregated data form is a data format comprising the one or more data buckets, and wherein each of the one or more data buckets is dedicated to storing a certain datatype or data content, and wherein the one or more data buckets comprises:
a supplies data bucket assigned to storing supplies information, wherein the supplies information comprises a name and unique reference identifier for a plurality of single use supplies to be used during a procedure;
an instruments data bucket assigned to storing instruments information, wherein the instruments information comprises a name for a plurality of multiple-use instruments to be used during the procedure;
a preparation data bucket assigned to storing preparation information comprising an indication of how a patient should be prepared for the procedure; and
an unstructured data bucket assigned to storing one or more unstructured files to be associated with the procedure.

### Claim 17 (depends on 1)

The method of claim 1, wherein the summary file is utilized to prepare for a procedure, and wherein the method further comprises calculating a total cost for performing the procedure based on an itemized facility-specific cost for each of a plurality of products to be utilized during the procedure, a labor cost for each of a plurality of personnel to work during the procedure, and a facility cost for utilizing the facility during the procedure.

### Claim 18 (depends on 1)

The method of claim 1, wherein identifying the one or more products associated with the name of the device comprises querying a database to identify the one or more products associated with the name of the device;
wherein the method further comprises identifying a unique product code for each of the one or more products; and
wherein the database comprises information extracted by a web scraper.

### Claim 19 (depends on 1)

The method of claim 1, further comprising providing the summary file to a predictive modeling neural network trained to suggest one or more additional products to be utilized during a procedure associated with the summary file.

### Claim 20

A system for collecting, aggregating, and analyzing data, the system comprising one or more processors for executing instructions stored in non-transitory computer readable storage medium, the instructions comprising:
ingesting an unstructured file comprising text;
mapping the unstructured file to a primary aggregated data form, wherein the primary aggregated data form is mapped to a tenant on a cloud-based database;
creating a unique user pool for the primary aggregated data form to provide data isolation security to the primary aggregated data form, wherein users within the unique user pool have permissions to access the primary aggregated data form;
translating the unstructured file to a computer-readable file by causing a file analysis machine learning algorithm to execute optical character recognition processing on the unstructured file to identify textual characters in the unstructured file;
classifying content of a plurality of words or phrases within the computer-readable file by cross-referencing the plurality of words or phrases against known vocabulary, wherein the plurality of words or phrases comprises a name of a device;
scraping web data from a webpage by communicating directly with the webpage and executing a web script to render the webpage as a simulated user interaction, wherein the scraped web data pertains to the device;
comparing the scraped web data to applicable stored data to determine whether a discrepancy exists between the scraped web data and the applicable stored data, wherein the applicable stored data pertains to the device;
in response to identifying the discrepancy between the scraped web data and the applicable stored data, resolving the discrepancy by updating the applicable stored data to comprise the scraped web data;
assigning the plurality of words or phrases from the computer-readable file to one or more data buckets associated with the primary aggregated data form based on the content classification, wherein the primary aggregated data form is stored on the cloud-based database, and wherein the primary aggregated data form comprises at least one device data bucket assigned to receive the name of the device;
replicating the primary aggregated data form to generate one or more facility aggregated data forms, wherein each of the one or more facility aggregated data forms is customizable relative to the primary aggregated data form, and wherein each of the one or more facility aggregated data forms is stored on the database;
generating a summary file comprising information from the primary aggregated data form, wherein the summary file comprises structured data and unstructured data;
identifying a facility where the summary file will be utilized;
retrieving the name of the device from the device data bucket for the aggregated data form;
cross-referencing the name of the device against the applicable stored data pertaining to the device to identify one or more products associated with the device;
electronically communicating with an inventory management solution associated with the facility to determine whether any of the one or more products is available at the facility; and
electronically communicating with an invoicing system associated with the facility to determine an itemized cost of at least a portion of the one or more products when utilized at the facility.

### Claim 21 (depends on 20)

The system of claim 20, wherein the primary aggregated data form comprises a plurality of independent data buckets;
wherein each of the plurality of independent data buckets is configured to receive data of a certain file type and a certain content; and
wherein the process of assigning the name of the device to the at least one device data bucket comprises identifying a correct data bucket for the device.

### Claim 22 (depends on 20)

The system of claim 20, wherein the summary file comprises one or more of a collection of data accessible on a user interface, a collection of data accessible on a web page, or a file stored in a portable document format.

### Claim 23 (depends on 20)

The system of claim 20, wherein the instructions are such that scraping the web data from the webpage comprises extracting structured data from the webpage, and wherein the scraped structured data comprises one or more of:
one or more products applicable to the name of the device;
regulatory approval status associated with the one or more products;
current pricing for the one or more products;
current availability for the one or more products; or
safety rating for the one or more products.

### Claim 24 (depends on 20)

The system of claim 20, wherein the primary aggregated data form comprises information for a surgical preference card, and wherein the method further comprises:
storing the primary aggregated data form associated with a healthcare system, wherein the healthcare system comprises a plurality of surgical facilities;
storing a plurality of facility aggregated data forms, wherein each of the plurality of facility aggregated data forms is associated with one facility of the plurality of surgical facilities in the healthcare system; and
updating each of the plurality of facility aggregated data forms when the primary aggregated data form is updated.

### Claim 25 (depends on 20)

The system of claim 20, wherein the optical character recognition processing performed by the file analysis machine learning algorithm comprises:
identifying a boundary between a bright pixel region and a dark pixel region;
classifying the bright pixel region as background; and
processing the dark pixel region to identify a textual character, wherein the textual character comprises one or more of a letter, number, emoji, or punctuation character.

### Claim 26 (depends on 20)

The system of claim 20, wherein the primary aggregated data form comprises a plurality of data buckets, and wherein one or more of the plurality of data buckets is a required data bucket that must be filled with data for the aggregated data form to be complete, and wherein the method further comprises:
determining whether the primary aggregated data form is complete based on whether each of the required data buckets is filled; and
in response to determining that each of the required data buckets is filled, generating a message querying a user whether the primary aggregated data bucket is complete.

### Claim 27 (depends on 20)

The system of claim 20, wherein the primary aggregated data form comprises digital information for a surgical preference card, and wherein the unstructured file comprises a depiction of a completed preference card, and wherein the depiction of the completed preference card comprises one or more of:
an image, scan, or portable document format (PDF) of a handwritten surgical preference card;
an image, scan, or PDF of a printed surgical preference card; or
an image, scan, or PDF of a digital surgical preference card.

### Claim 28 (depends on 20)

The system of claim 20, wherein the instructions further comprise rendering a user interface accessible to a user, wherein the user interface comprises:
a dropdown listing of a plurality of items listed on a surgical preference card, wherein the dropdown listing comprises functionality enabling the user to expand or diminish the dropdown listing;
a hyperlink associated with one or more of the plurality of items in the dropdown listing, wherein the hyperlink directs to a means for ordering the corresponding item;
a text box associated with one or more of the plurality of items in the dropdown listing, wherein the text box comprises a means for a user to input a quantity of the corresponding item; and
a button associated with one or more of the plurality of items in the dropdown listing, wherein the button comprises a means for a user to delete the corresponding item from the surgical preference card.

### Claim 29 (depends on 20)

The system of claim 20, wherein the instructions further comprise:
identifying one or more facility aggregated data forms that are associated with the primary aggregated data form;
determining whether any of the one or more facility aggregated data forms is inconsistent with information stored on the primary aggregated data form; and
in response to determining that at least one of the one or more facility aggregated data forms is inconsistent with the primary aggregated data form, updating the at least one facility aggregated data form to comprise the same data associated with the primary aggregated data form.

### Claim 30

Non-transitory computer readable storage medium storing instructions for execution by one or more processors, the instructions comprising:
ingesting an unstructured file comprising text;
mapping the unstructured file to a primary aggregated data form, wherein the primary aggregated data form is mapped to a tenant on a cloud-based database;
creating a unique user pool for the primary aggregated data form to provide data isolation security to the primary aggregated data form, wherein users within the unique user pool have permissions to access the primary aggregated data form;
translating the unstructured file to a computer-readable file by causing a file analysis machine learning algorithm to execute optical character recognition processing on the unstructured file to identify textual characters in the unstructured file;
classifying content of a plurality of words or phrases within the computer-readable file by cross-referencing the plurality of words or phrases against known vocabulary, wherein the plurality of words or phrases comprises a name of a device;
scraping web data from a webpage by communicating directly with the webpage and executing a web script to render the webpage as a simulated user interaction, wherein the scraped web data pertains to the device;
comparing the scraped web data to applicable stored data to determine whether a discrepancy exists between the scraped web data and the applicable stored data, wherein the applicable stored data pertains to the device;
in response to identifying the discrepancy between the scraped web data and the applicable stored data, resolving the discrepancy by updating the applicable stored data to comprise the scraped web data;
assigning the plurality of words or phrases from the computer-readable file to one or more data buckets associated with the primary aggregated data form based on the content classification, wherein the primary aggregated data form is stored on the cloud-based database, and wherein the primary aggregated data form comprises at least one device data bucket assigned to receive the name of the device;
replicating the primary aggregated data form to generate one or more facility aggregated data forms, wherein each of the one or more facility aggregated data forms is customizable relative to the primary aggregated data form, and wherein each of the one or more facility aggregated data forms is stored on the database;
generating a summary file comprising information from the primary aggregated data form, wherein the summary file comprises structured data and unstructured data;
identifying a facility where the summary file will be utilized;
retrieving the name of the device from the device data bucket for the aggregated data form;
cross-referencing the name of the device against the applicable stored data pertaining to the device to identify one or more products associated with the device;
electronically communicating with an inventory management solution associated with the facility to determine whether any of the one or more products is available at the facility; and
electronically communicating with an invoicing system associated with the facility to determine an itemized cost of at least a portion of the one or more products when utilized at the facility.
