DETAILED ACTION
Continued Examination Under 37 CFR 1.114
A request for continued examination under 37 CFR 1.114, including the fee set forth in 37 CFR 1.17(e), was filed in this application after final rejection. Since this application is eligible for continued examination under 37 CFR 1.114, and the fee set forth in 37 CFR 1.17(e) has been timely paid, the finality of the previous Office action has been withdrawn pursuant to 37 CFR 1.114. Applicant's submission filed on 9/15/26 has been entered.
Status of the Claims
This office action is submitted in response to the amendment filed on 9/15/26.
Examiner notes Applicant's foreign priority date of 3/29/24, which stems from 10-2024-0043465 (KR).
Examiner notes the previous analysis from 9/8/25, which indicated that the claims were eligible under 35 USC 101.
Claims 1, 4, 6, 9, 11, and 14 have been amended.
Claims 2, 3, 5, 7, 8, 10, 12, 13, and 15 have been canceled.
Therefore, claims 1, 4, 6, 9, 11, 14, and 16 are currently pending and have been examined.
Notice of Pre-AIA or AIA Status
The present application, filed on or after March 16, 2013, is being examined under the first inventor to file provisions of the AIA .
Claim Objections
Claim 11 is objected to because of the following informalities:
Claim 11 is identified with the status identifier "(Previously Presented)," but the claim listing shows claim 11 with underlined and struck-through text indicating changes made by the present amendment. The proper status identifier is "(Currently Amended)." See 37 CFR 1.121(c). For purposes of examination, claim 11 is treated as reciting the amended text shown in the listing. Appropriate correction is required.
Claim Rejections - 35 USC § 112
The following is a quotation of 35 U.S.C. 112(b):
(b) CONCLUSION.—The specification shall conclude with one or more claims particularly pointing out and distinctly claiming the subject matter which the inventor or a joint inventor regards as the invention.
The following is a quotation of 35 U.S.C. 112 (pre-AIA ), second paragraph:
The specification shall conclude with one or more claims particularly pointing out and distinctly claiming the subject matter which the applicant regards as his invention.
Claims 4, 9, and 14 are rejected under 35 U.S.C. 112(b) as being indefinite for failing to particularly point out and distinctly claim the subject matter which the inventor or a joint inventor regards as the invention.
Claim 1 recites that the overridden API is used by the client (i) to exchange an HTTP request for calling the script of the inline frame and an HTTP response for calling the script of the inline frame via a proxy server, and (ii) to modify at least one property of the HTTP response for calling the script of the inline frame. Claim 4 recites wherein at least one property of the HTTP response for calling the script of the inline frame is modified by the proxy server. By introducing at least one property a second time without reference to the property already recited in claim 1, claim 4 makes it unclear whether it refers to the same property recited in claim 1 or to an additional, different property of the same HTTP response. If claim 4 refers to the same property, it is further unclear whether that property is modified by the client using the overridden API, as recited in claim 1, or by the proxy server, as recited in claim 4. The specification describes the at least one property of the HTTP response for calling the script of the inline frame as being modified either by the proxy server (Paragraphs 0012, 0108-0111) or by the client executing the script of the inline frame (Paragraphs 0013, 0113). Accordingly, the metes and bounds of claim 4 cannot be determined. See MPEP 2173.02; MPEP 2173.05(o).
For purposes of examination, claim 4 is interpreted as reciting that the at least one property of claim 1 is modified by the proxy server when the client uses the overridden API to exchange the HTTP request and the HTTP response via the proxy server, consistent with the specification's description of the proxy server modifying the HTTP response for calling the script of the inline frame (Paragraphs 0012, 0108-0111).
Claims 9 and 14 recite the same language with respect to independent claims 6 and 11, respectively, and are rejected and interpreted for the same reasons (see Paragraphs 0017-0018, 0022-0023).
Claim Rejections - 35 USC § 103
The following is a quotation of 35 U.S.C. 103 which forms the basis for all obviousness rejections set forth in this Office action:
A patent for a claimed invention may not be obtained, notwithstanding that the claimed invention is not identically disclosed as set forth in section 102, if the differences between the claimed invention and the prior art are such that the claimed invention as a whole would have been obvious before the effective filing date of the claimed invention to a person having ordinary skill in the art to which the claimed invention pertains. Patentability shall not be negated by the manner in which the invention was made.
Claims 1, 4, 6, 9, 11, 14, and 16 are rejected under 35 U.S.C. § 103 as being unpatentable over Malca (US 2018/0101507 A1) in view of Carasso (US 2017/0278144 A1), and in further view of Schejter (US 2018/0013848 A1).
Claims 1 and 6: Malca discloses an operation method of a server to provide an advertisement (Paragraphs 0014, 0016; FIG. 1. The server includes the anti-ad-blocking system, which may alternatively reside in and be implemented with client-side code on the computing device.) and a non-transitory computer readable medium comprising at least one instruction executed by a processor (Paragraphs 0024, 0026. The memory and storage devices of the client device and server store instructions which, when executed by the processor, cause the processor to perform the described methods, and a non-transitory computer-readable medium includes any storage medium that may store or transfer information.), wherein the client executes instructions to:
generate an inline frame including a script which is executed to output advertisement content on a web page (Paragraphs 0008, 0043-0044, 0050; FIGS. 2-3. The anti-ad-blocking system creates a BLOB object containing HTML code, creates an object URL referencing the BLOB content, creates an iframe at a location on a webpage corresponding to where advertising content should be displayed, and sets the source of the iframe to the object URL, after which the HTML code is executed, a request for content is sent, and the advertising content is received and rendered. In the client device embodiment, the client device loads the HTML document including the iframe and executes the HTML code included in the BLOB content.);
add the inline frame to the web page (Paragraph 0044; FIG. 2, step 203. The anti-ad-blocking system creates the iframe at a location on the webpage where the HTML code is to be retrieved and executed, corresponding to the location where advertising content should be displayed.);
output the advertisement content in an area where the advertisement content is to be output using the script of the inline frame (Paragraphs 0043-0044; FIG. 2, steps 205-207. Upon execution of the HTML code in the iframe, a request for content is sent, and the received advertising content is rendered within the iframe on the webpage.); and
the script of the inline frame is executed to override, using hooking or tampering, an API of a browser application executed on the client (Paragraphs 0049-0050; FIG. 3. Object wrappers in the browser's Document Object Model, including Element.prototype.appendChild and Element.prototype.insertBefore, are modified so that a newly created iframe's source is automatically set to a BLOB URL, and these object wrapper overrides are pushed down into the created iframe. Replacing the behavior of the browser's built-in prototype methods in this manner is overriding an API of the browser application by hooking or tampering.).
Malca does not appear to explicitly disclose receiving an HTTP request from a client; transmitting, to the client, an HTTP response with a script added, the script including at least one instruction to be executed on the client, wherein the at least one instruction included in the script of the HTTP response is executed by the client; or that the web page is a web page of the HTTP response.
Carasso, however, discloses receiving an HTTP request from a client (Paragraph 0043; FIG. 3. The user device requests the content publisher content from a remote site, the request being issued as an HTTP GET request with a URL identifying an address of the site and the content being requested.) and transmitting, to the client, an HTTP response with a script added, the script including at least one instruction to be executed on the client, wherein the at least one instruction included in the script of the HTTP response is executed by the client, the content being a web page of the HTTP response (Paragraphs 0033, 0036, 0042-0043, 0045; FIGS. 2-3. In response to the HTTP request, the content publisher serves the requested content with the bypass loader embedded in it, the content including a script for running the bypass loader, and upon the load event firing on the user device, the bypass loader script is invoked and executed on the user device.).
Therefore, it would have been obvious to one of ordinary skill in the art prior to the effective filing date of the invention to modify the anti-ad-blocking method of Malca so that the server receives an HTTP request from the client and transmits an HTTP response to which the iframe-generating script is added for execution on the client, as taught by Carasso. One would have been motivated to do this in order to embed the anti-ad-blocking code within the publisher content served to each requesting client, so that the code executes as the client parses the content and advertisements are loaded and presented even when an ad blocker runs on the client.
The combination of Malca and Carasso does not appear to explicitly disclose that the overridden API is used by the client (i) to exchange an HTTP request for calling the script of the inline frame and an HTTP response for calling the script of the inline frame via a proxy server, and (ii) to modify at least one property of the HTTP response for calling the script of the inline frame.
Schejter, however, discloses the overridden API is used by the client (i) to exchange an HTTP request for calling the script of the inline frame and an HTTP response for calling the script of the inline frame via a proxy server, and (ii) to modify at least one property of the HTTP response for calling the script of the inline frame (Paragraphs 0028-0029, 0074, 0082-0084, 0097, 0101. A first list of browser functions, including "window.XMLHttpRequest.prototype.open," "Node.prototype.appendChild," and "Node.prototype.insertBefore," is maintained, and each listed function is assigned to a customized function, so that when the browser executes the function, the customized function is invoked and changes the URL of the generated request to go via the proxy server. The rewritten script containing the customized function is executed on the user device, and the function assignment may itself be performed client-side on the user device. The proxy server routes each such request to the corresponding web server, retrieves the requested content, processes (e.g., rewrites) the retrieved content, and provides a response including the processed content to the user device, including for content nested in inline frames within the web page.).
Therefore, it would have been obvious to one of ordinary skill in the art prior to the effective filing date of the invention to modify the combination of Malca and Carasso so that the browser API overridden by the script of the inline frame is assigned to a customized function that directs the request and response for the inline frame's script through a proxy server that processes the response, as taught by Schejter. One would have been motivated to do this in order to ensure that all requests generated from the scripts of the web page on the client, including requests generated at runtime, pass through the proxy server rather than being sent directly to the destination server.
Claims 4, 9, and 14: The Malca/Carasso/Schejter combination discloses those limitations cited above. Schejter further discloses wherein at least one property of the HTTP response for calling the script of the inline frame is modified by the proxy server (Paragraphs 0028, 0074-0077. The proxy server processes the content received from the web server before forwarding it to the user device, rewriting the script in the received content, and sends the processed content, including the rewritten script, to the user device.).
The rationale for combining Schejter with Carasso and Malca is articulated above and reincorporated herein by reference.
Claim 11: Malca discloses an operation method of a client to provide an advertisement (Paragraphs 0016, 0027, 0050; FIG. 3. The anti-ad-blocking process is performed by the client device, and the steps described as performed by the server may be performed locally on the client device.), comprising executing HTML code to generate an inline frame including a script which is executed to output advertisement content on a web page (Paragraphs 0043-0044, 0050; FIGS. 2-3. The iframe is created at the location on the webpage where advertising content is to be displayed, with its source set to an object URL referencing BLOB content containing HTML code, and the client device executes that HTML code to request and render the advertising content.); adding the inline frame to the web page (Paragraph 0044; FIG. 2, step 203. The iframe is created at the location on the webpage where the HTML code is to be retrieved and executed.); outputting the advertisement content in an area where the advertisement content is to be output using the script of the inline frame (Paragraphs 0044, 0050; FIG. 2, steps 205-207; FIG. 3, steps 303-305. The requested advertising content is received and rendered within the iframe via the web browser.); and the script of the inline frame is executed to override, using hooking or tampering, an API of a browser application executed on the client (Paragraphs 0049-0050; FIG. 3. Object wrappers in the browser's Document Object Model, including Element.prototype.appendChild and Element.prototype.insertBefore, are modified so that a newly created iframe's source is automatically set to a BLOB URL, and these overrides are pushed down into the created iframe.).
Malca does not appear to explicitly disclose transmitting an HTTP request to a server; receiving an HTTP response with a script added, the script including at least one instruction; executing the at least one instruction included in the script of the HTTP response; or that the web page is a web page of the HTTP response.
Carasso, however, discloses transmitting an HTTP request to a server (Paragraph 0043; FIG. 3. The user device issues an HTTP GET request with a URL identifying the address of the site and the content being requested.); receiving an HTTP response with a script added, the script including at least one instruction (Paragraphs 0033, 0042-0043; FIGS. 2-3. The user device receives the requested content publisher content, which includes a script for running the bypass loader.); and executing the at least one instruction included in the script of the HTTP response on a web page of the HTTP response (Paragraphs 0036, 0045; FIGS. 2-3. After the user device loads the content objects, the load event fires and the bypass loader script embedded in the received content is invoked and executed on the user device.).
The combination of Malca and Carasso does not appear to explicitly disclose that the overridden API is used by the client (i) to exchange an HTTP request for calling the script of the inline frame and an HTTP response for calling the script of the inline frame via a proxy server, and (ii) to modify at least one property of the HTTP response for calling the script of the inline frame.
Schejter, however, discloses the overridden API is used by the client (i) to exchange an HTTP request for calling the script of the inline frame and an HTTP response for calling the script of the inline frame via a proxy server, and (ii) to modify at least one property of the HTTP response for calling the script of the inline frame (Paragraphs 0028-0029, 0074, 0082-0084, 0097, 0101. Browser functions including "window.XMLHttpRequest.prototype.open," "Node.prototype.appendChild," and "Node.prototype.insertBefore" are assigned to customized functions that, when invoked on the user device, change the URL of the generated request to go via the proxy server, and the proxy server retrieves the requested content, processes (e.g., rewrites) it, and provides a response including the processed content to the user device.).
The rationale for combining Schejter with Carasso and Malca is articulated above and reincorporated herein by reference.
Claim 16: The Malca/Carasso/Schejter combination discloses those limitations cited above. Malca further discloses wherein the API override is limited to an execution context of the inline frame and is performed prior to rendering of the advertisement content, without reinserting advertisement content removed by an ad-blocking function (Paragraphs 0043-0044, 0049; FIG. 2. The object wrapper overrides are pushed down into the created iframe, scoping the override to the iframe's execution context. The iframe and BLOB URL mechanism are established at steps 201-204, before the request for content at step 205 and rendering at steps 206-207. Advertising content is retrieved and rendered within the iframe "without being blocked or hidden by an ad-blocker's stylesheet restrictions," so no removal or reinsertion of advertisement content occurs.).
The rationale for combining Schejter with Carasso and Malca is articulated above and reincorporated herein by reference.
Other Relevant Art
Though not cited in the above rejections, the following references are nevertheless deemed to be relevant to Applicant's disclosure:
Abdulhayoglu et al. (20200104885), directed to a system for displaying media content in an unblockable manner.
Lind et al. (20160301735), directed to a system to circumvent advertisement blocking on the internet.
Hod et al. (20180150877), directed to a 3rd party request-blocking bypass layer.
Lyndon-James et al. (US 11,178,120), directed to a system and method for circumventing advertisement blockers using a proxy server.
Begen et al. (10339280), directed to a method for protecting content when using a general-purpose user interface application.
Response to Arguments
Applicant's arguments with respect to the rejection of claims 1, 4, 6, 9, 11, 14, and 16 under 35 U.S.C. § 103 have been considered but are moot because the new ground of rejection relies on Schejter for the limitations reciting that the overridden API is used by the client to exchange the HTTP request and the HTTP response via a proxy server and to modify at least one property of the HTTP response, which are the teachings specifically challenged in Applicant's arguments directed to Carasso and to the asserted need for further modification of the Malca/Carasso combination.
Applicant also argues that modifying the override of Malca to route a request through a proxy server and modify an HTTP response would render the override of Malca unsuitable for its intended purpose of avoiding a network call by accessing a BLOB URL (Remarks, pages 5-6). This argument is not persuasive. Malca uses the BLOB URL as the source of the iframe so that the HTML code loaded in the iframe executes outside the reach of the ad blocker's network request filters (Malca, Paragraphs 0042-0043). Malca does not avoid network calls altogether: once the HTML code in the iframe executes, a request for content is sent and the requested content is received and rendered (Malca, Paragraphs 0044, 0050; FIG. 2, steps 205-207; FIG. 3, steps 303-305), and further code may be retrieved through XMLHttpRequest, JSONP, JavaScript, or WebSocket requests (Malca, Paragraphs 0045-0048). The proxy routing applied in the rejection operates on these requests generated from within the iframe and leaves the BLOB-sourced iframe of Malca intact. The proposed modification therefore does not render Malca unsatisfactory for its intended purpose. See MPEP 2143.01(V); In re Gordon, 733 F.2d 900, 221 USPQ 1125 (Fed. Cir. 1984).
Applicant's arguments regarding independent claims 6 and 11 and the dependent claims rely on the arguments presented for claim 1 and are addressed above.
Conclusion
Any inquiry concerning this communication or earlier communications from the examiner should be directed to CHRISTOPHER BUSCH whose telephone number is (571)270-7953. The examiner can normally be reached M-F 10-7.
Examiner interviews are available via telephone, in-person, and video conferencing using a USPTO supplied web-based collaboration tool. To schedule an interview, applicant is encouraged to use the USPTO Automated Interview Request (AIR) at http://www.uspto.gov/interviewpractice.
If attempts to reach the examiner by telephone are unsuccessful, the examiner’s supervisor, Waseem Ashraf can be reached at 571-270-3948. The fax phone number for the organization where this application or proceeding is assigned is 571-273-8300.
Information regarding the status of published or unpublished applications may be obtained from Patent Center. Unpublished application information in Patent Center is available to registered users. To file and manage patent submissions in Patent Center, visit: https://patentcenter.uspto.gov. Visit https://www.uspto.gov/patents/apply/patent-center for more information about Patent Center and https://www.uspto.gov/patents/docx for information about filing in DOCX format. For additional questions, contact the Electronic Business Center (EBC) at 866-217-9197 (toll-free). If you would like assistance from a USPTO Customer Service Representative, call 800-786-9199 (IN USA OR CANADA) or 571-272-1000.
/CHRISTOPHER C BUSCH/Examiner, Art Unit 3621