IP Library Granted Patent US 11,675,969
Granted Patent B2
US 11,675,969 · App. 17/510,289 · Granted Jun 13, 2023

Dynamic native content insertion

Inventors: Ryan Weald (San Francisco, CA); Michael Jensen (San Francisco, CA)
Assignee: Sharethrough Inc.
G06F40/143G06F40/186G06Q30/0277H04L67/01
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,675,969
App. No.
17/510,289
Granted
Jun 13, 2023
Kind
B2
Abstract

Approaches, techniques, and mechanisms are disclosed for automatically inserting supplemental items into documents. According to an embodiment, a first request is received, comprising document information that identifies a particular document. A target repeated structure type, to which a group of items in the particular document conform, is identified within the particular document. Based on the target repeated structure type, a template is generated. A new content item is generated by applying descriptive metadata that describes the new content item to the template. The new content item conforms to the target repeated structure type. The new content item is inserted in the particular document at an insertion point before or after a particular content item that conforms to the target repeated structure type.

Claims (42)

1. A method comprising:

identifying, at a server, a plurality of data structure types within a web page;

analyzing the plurality of data structure types for a repeated data structure type;

selecting a supplemental item template, from a plurality of supplemental item templates, for the repeated data structure type;

extracting descriptive metadata from a supplemental item using the supplemental item template;

generating insertion instructions for inserting a content item into the web page;

sending the supplemental item template, descriptive metadata, and insertion instructions to a client device thereby causing the client device to create the content item using the supplemental item template and descriptive metadata.

2. The method of claim 1 , wherein the analyzing the plurality of data structure types for the repeated data structure type further comprises: using a pattern recognition component to find the repeated data structure type, the pattern recognition component comprising one or more of: a hidden Markov model, a Bayesian classifier, or a neural network.

3. The method of claim 1 , wherein the analyzing the plurality of data structure types for the repeated data structure type further comprises: analyzing a document-object-model representation of the web page to identify patterns of repeated markup elements and selecting a particular pattern to be the repeated data structure type.

4. The method of claim 1 , wherein the selecting the supplemental item template further comprises: selecting a previously generated supplemental item template that is associated with a Uniform Resource Locator of the web page.

5. The method of claim 1 , wherein the selecting the supplemental item template further comprises:

selecting a previously generated supplemental item template that is associated with a Uniform Resource Locator of the web page;

generating verification data for the web page; and

comparing the verification data to existing verification data for the previously generated supplemental item template to determine that the previously generated supplemental item template is still valid for the web page.

6. The method of claim 1 , wherein the repeated data structure type includes an arrangement of markup tags and markup attributes.

7. The method of claim 1 , wherein the generating insertion instructions for inserting the content item into the web page further comprises: selecting an insertion point for the content item between a first structure of the repeated data structure type and a second structure of the repeated data structure type.

8. The method of claim 1 , wherein the generating insertion instructions for inserting the content item into the web page further comprises: selecting an insertion point based on one or more of: client device identification information associated with the client device, user identification information associated with the client device, or one or more keywords identified within the content item.

9. One or more non-transitory computer-readable media storing instructions that, when executed by one or more computing devices, cause performance of: identifying, at a server, a plurality of data structure types within a web page;

analyzing the plurality of data structure types for a repeated data structure type; selecting a supplemental item template, from a plurality of supplemental item templates, for the repeated data structure type;

extracting descriptive metadata from a supplemental item using the supplemental item template;

generating insertion instructions for inserting a content item into the web page; sending the supplemental item template, descriptive metadata, and insertion instructions to a client device thereby causing the client device to create the content item using the supplemental item template and descriptive metadata.

10. The one or more non-transitory computer-readable media of claim 9 , wherein the analyzing the plurality of data structure types for the repeated data structure type further comprises: using a pattern recognition component to find the repeated data structure type, the pattern recognition component comprising one or more of: a hidden Markov model, a Bayesian classifier, or a neural network.

11. The one or more non-transitory computer-readable media of claim 9 , wherein the analyzing the plurality of data structure types for the repeated data structure type further comprises: analyzing a document-object-model representation of the web page to identify patterns of repeated markup elements and selecting a particular pattern to be the repeated data structure type.

12. The one or more non-transitory computer-readable media of claim 9 , wherein the selecting the supplemental item template further comprises: selecting a previously generated supplemental item template that is associated with a Uniform Resource Locator of the web page.

13. The one or more non-transitory computer-readable media of claim 9 , wherein the selecting the supplemental item template further comprises:

selecting a previously generated supplemental item template that is associated with a Uniform Resource Locator of the web page;

generating verification data for the web page; and

comparing the verification data to existing verification data for the previously generated supplemental item template to determine that the previously generated supplemental item template is still valid for the web page.

14. The one or more non-transitory computer-readable media of claim 9 , wherein the repeated data structure type includes an arrangement of markup tags and markup attributes.

15. The one or more non-transitory computer-readable media of claim 9 , wherein the generating insertion instructions for inserting the content item into the web page further comprises: selecting an insertion point for the content item between a first structure of the repeated data structure type and a second structure of the repeated data structure type.

16. The one or more non-transitory computer-readable media of claim 9 , wherein the generating insertion instructions for inserting the content item into the web page further comprises: selecting an insertion point based on one or more of: client device identification information associated with the client device, user identification information associated with the client device, or one or more keywords identified within the content item.

17. A server, comprising:

one or more hardware processors; and

a memory storing instructions, which when executed by the one or more processors, cause the one or more processors to perform:

identifying a plurality of data structure types within a web page;

analyzing the plurality of data structure types for a repeated data structure type; selecting a supplemental item template, from a plurality of supplemental item templates, for the repeated data structure type;

extracting descriptive metadata from a supplemental item using the supplemental item template;

generating insertion instructions for inserting a content item into the web page;

sending the supplemental item template, descriptive metadata, and insertion instructions to a client device thereby causing the client device to create the content item using the supplemental item template and descriptive metadata.

18. The server of claim 17 , wherein the analyzing the plurality of data structure types for the repeated data structure type further comprises: analyzing a document-object-model representation of the web page to identify patterns of repeated markup elements and selecting a particular pattern to be the repeated data structure type.

19. The server of claim 17 , wherein the selecting the supplemental item template further comprises: selecting a previously generated supplemental item template that is associated with a Uniform Resource Locator of the web page.

20. The server of claim 17 , wherein the generating insertion instructions for inserting the content item into the web page further comprises: selecting an insertion point for the content item between a first structure of the repeated data structure type and a second structure of the repeated data structure type.

Assignments (3)
RELEASE OF SECURITY INTEREST Recorded Nov 5, 2025
From: GLAS SAS, AS SECURITY AGENT
To: SHARETHROUGH USA INC.
Reel/Frame 072792/0402 →
SECURITY INTEREST Recorded Sep 27, 2024
From: SHARETHROUGH USA INC.
To: GLAS SAS, AS SECURITY AGENT
Reel/Frame 068725/0114 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 13, 2023
From: WEALD, RYAN; JENSEN, MICHAEL
To: SHARETHROUGH INC.
Reel/Frame 063937/0270 →
Continuity (3)
Continuation 16538607 · Aug 12, 2019
Continuation 14095163 · Dec 3, 2013
Related Publication 20220156451A1 · May 19, 2022