Methods and systems for selectively preventing third-party content from being displayed using undefined publisher identifier

Patent No. US10049170 (titled "Methods and systems for selectively preventing third-party content from being displayed using undefined publisher identifier") on Aug 26, 2014. The application was issued on Aug 14, 2018.

What is this patent about?

’170 is related to the field of digital content management and the dynamic modification of electronic documents. Specifically, it addresses the technical challenge of selectively controlling the behavior of third-party content slots within a web page without requiring the manual removal or hard-coding of scripts by the publisher. The background context involves the difficulty publishers face when trying to run experiments or suppress specific advertisements across a large volume of information resources where content slots are already embedded in the source code.

The underlying idea behind ’170 is to intercept and neutralize the execution of content-fetching scripts at the client side by injecting a high-priority code snippet. Rather than deleting the original ad-serving code, the invention uses a pre-emptive execution strategy where a small piece of actionable language is inserted into the document header or an early-loading portion of the body. This snippet effectively hijacks the standard ad-request process by modifying the parameters that the browser would otherwise use to request a third-party content item.

The claims of ’170 focus on a system and method for providing a modified version of an information resource that prevents specific content slots from displaying items based on a multi-factor selection policy. This policy identifies target slots by evaluating the total number of slots on a page, their specific locations, and their physical dimensions. The claims specifically cover the mechanism of replacing a valid publisher client identifier with an undefined identifier, which ensures that when the original ad script eventually runs, the content distribution server ignores the resulting malformed request.

In practice, the invention works by defining a new function or property on the global window object that overrides the standard behavior of common ad-serving libraries. When the browser encounters the original ad script, it attempts to access properties like the client ID or the push function. Because the injected snippet has already redefined these properties using a getter-setter pair, the browser is forced to use the modified, non-functional values. This results in the content slot remaining empty or being removed from the Document Object Model entirely, effectively silencing the slot without breaking the rest of the page logic.

This approach differs from prior solutions that required publishers to manually edit HTML templates or use server-side filters to strip out code. By using actionable language snippets to modify object properties in real-time, the system allows for granular, per-request control. This enables a publisher to serve the original version of a page to one user while serving a modified, ad-suppressed version to another, facilitating seamless A/B testing and user-experience optimization without permanent alterations to the underlying source code.

How does this patent fit in bigger picture?

Technical Landscape

In the mid-2010s when ’170 was filed, web document processing was typically implemented using static Document Object Model (DOM) parsing where content placeholders were manually defined within the source code. At a time when systems commonly relied on hard-coded identifiers or fixed templates to distinguish between primary editorial content and peripheral elements like sidebars or menus, the dynamic identification of content structures was limited by the heterogeneous nature of web design. Hardware and software constraints made the automated, real-time extraction of primary content non-trivial, as scripts often struggled to maintain consistency across different page renderings when structural metadata was absent or non-standardized.

Prosecution Position

The disclosed invention represents a meaningful technical advancement through an architectural shift from manual content slot definition to the automated generation of stable identifiers for primary content nodes. By implementing a multi-stage detection policy that identifies content-related DOM nodes, determines their nearest container nodes, and applies a scoring mechanism based on character and paragraph density, the system enables the dynamic insertion of third-party items into previously unstructured documents. This integration overcomes the technical constraint of volatile web structures by selecting identifiers that uniquely and consistently map to primary content containers, thereby ensuring that supplemental content is accurately placed even as the underlying information resource evolves or is rendered across different environments.

Claims

This patent contains 18 claims, with claims 1, 8, and 15 serving as the independent claims. The independent claims focus on a system and methods for selectively suppressing the display of third-party content in specific slots of an information resource by replacing a publisher's client identifier with an undefined identifier in the executable code, thereby causing a distribution server to ignore content requests for those slots. The dependent claims further define these operations by specifying the use of DOM tree inspections to identify content slots, the placement of suppression code within the header of the resource, the application of selection policies based on slot characteristics, and the delivery of different versions of the resource to different client devices.

Key Claim Terms New

Definitions of key terms used in the patent claims.

Term (Source)Support for SpecificationInterpretation
Client identifier
(Claim 1, Claim 8, Claim 15)
In some implementations, the snippet of actionable language is configured to replace a value of a property of the object identifying the content publisher to a content distribution server that selects content items to provide to the content slots of the information resource.A specific value or property within the executable code of a content slot that identifies the content publisher to a distribution server for the purpose of selecting and serving content.
Content slot
(Claim 1, Claim 8, Claim 15)
Information resources, such as web pages, can include primary content and content slots that serve as placeholders for third-party content items, such as creatives. The content slots in which third-party content items are inserted are typically defined manually in the web page code. Identifying the at least one content slot to prevent from displaying third-party content items includes identifying, by inspecting a DOM tree of the electronic document, at least one DOM element corresponding to the at least one content slot.A placeholder or defined section within an information resource (such as a web page) specifically designated for the insertion and display of third-party content items or creatives.
Modified version of the information resource
(Claim 1, Claim 8, Claim 15)
The modified version includes actionable language that prevents at least one of the content slots from displaying third-party content items. The processors can modify the electronic document to include a snippet of actionable language in a portion of the electronic document that is executed by the computing device prior to executing actionable language corresponding to the identified at least one content slot. This allows for selectively preventing content slots from displaying content items.A variant of an electronic document that has been altered to include specific actionable language or snippets that override original properties to prevent certain content slots from functioning.
Second executable code
(Claim 1, Claim 8, Claim 15)
The processors can modify the electronic document to include a snippet of actionable language in a portion of the electronic document that is executed by the computing device prior to executing actionable language corresponding to the identified at least one content slot. In some implementations, the snippet of actionable language is configured to override one or more properties of an object corresponding to the identified content slot. Modifying the electronic document includes inserting the snippet of actionable language at a location in a header portion of the electronic document.A snippet of actionable language (such as JavaScript) inserted into an information resource, typically in the header, designed to execute before the original content slot code to override its properties.
Undefined identifier
(Claim 1, Claim 8, Claim 15)
The snippet of actionable language is configured to replace a value of a property of the object identifying the content publisher. Execution of the first executable code with the client identifier replaced with the undefined identifier causing a content distribution server to ignore a request for content for the first content slot.A replacement value used in the content slot's executable code that lacks valid publisher identification, thereby causing the content distribution server to ignore the request for content.

Litigation Cases New

US Latest litigation cases involving this patent.

Case NumberFiling DateTitle
1:25-cv-00514Apr 29, 2025Accusearch Technologies Llc V. Google Llc

Patent Family

Patent Family

File Wrapper

The dossier documents provide a comprehensive record of the patent's prosecution history - including filings, correspondence, and decisions made by patent offices - and are crucial for understanding the patent's legal journey and any challenges it may have faced during examination.

  • Get instant alerts for new documents

US10049170

Application Number
US14468887A
Filing Date
Aug 26, 2014
Publication Date
Aug 14, 2018
External Links
Slate, USPTO , Google Patents