Prosecution Insights
Last updated: April 19, 2026
Application No. 18/173,377

GENERATING A PRODUCT DEMONSTRATION

Non-Final OA §103
Filed
Feb 23, 2023
Examiner
FIBBI, CHRISTOPHER J
Art Unit
2174
Tech Center
2100 — Computer Architecture & Software
Assignee
Walnut Ltd.
OA Round
3 (Non-Final)
53%
Grant Probability
Moderate
3-4
OA Rounds
4y 3m
To Grant
90%
With Interview

Examiner Intelligence

Grants 53% of resolved cases
53%
Career Allow Rate
199 granted / 376 resolved
-2.1% vs TC avg
Strong +38% interview lift
Without
With
+37.6%
Interview Lift
resolved cases with interview
Typical timeline
4y 3m
Avg Prosecution
40 currently pending
Career history
416
Total Applications
across all art units

Statute-Specific Performance

§101
9.8%
-30.2% vs TC avg
§103
62.9%
+22.9% vs TC avg
§102
10.7%
-29.3% vs TC avg
§112
10.2%
-29.8% vs TC avg
Black line = Tech Center average estimate • Based on career data from 376 resolved cases

Office Action

§103
DETAILED ACTION This action is in response to the RCE and Amendment dated 12 January 2026. Claims 1, 2, 5, 8-11, 14 and 17-19 are amended. No claims have been added or cancelled. Claims 1-20 remain pending and have been considered below. 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 . Response to Amendment Based on applicant’s amendment, the claim objection of claim 18 is withdrawn. Based on applicant’s amendment, the claim objection of claims 1, 10 and 19 is withdrawn. Claim Rejections - 35 USC § 103 This application currently names joint inventors. In considering patentability of the claims the examiner presumes that the subject matter of the various claims was commonly owned as of the effective filing date of the claimed invention(s) absent any evidence to the contrary. Applicant is advised of the obligation under 37 CFR 1.56 to point out the inventor and effective filing dates of each claim that was not commonly owned as of the effective filing date of the later invention in order for the examiner to consider the applicability of 35 U.S.C. 102(b)(2)(C) for any potential 35 U.S.C. 102(a)(2) prior art against the later invention. 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, 2, 5-7, 10, 11, 14-16 and 19 are rejected under 35 U.S.C. 103 as being unpatentable over Gwin et al. (US 2012/0204102 A1) in view of Trigalo et al. (US 2022/0043879 A1). As for independent claim 1, Gwin teaches a method comprising: generating at least one demonstration of a web-based product, said generating comprising: [(e.g. see Gwin paragraph 0019) ”a computer system that is configured to provide a demonstration of client-server software without requiring a network connection to a server computer system. The computer system executes software that mimics behavior of the server computer system including, for example, responding to user actions within a user interface”]. determining that a click event of the plurality of click events is a trigger event that triggers a layout change to the display, wherein the click event comprises a user interaction of an operator with a page element of the web-based product [(e.g. see Gwin paragraphs 0065, 0088-0090) ”In a fully implemented application, selection of such a navigation element initiates a request to a remote server, which returns updated content, such as a new page or updated content for a portion of the presented page. In the demonstration, selection of the navigation element initiates 465 execution of executable code by script component 430 that mimics the behavior of a server … Navigation elements and/or page manipulation elements within the page template may be elements that, when selected in a server-provided software application, initiate a request to a server computing device … processor 205 identifies 715 navigation elements and/or page manipulation elements based on an element type (e.g., an "input" element or an "anchor" element), an element attribute (e.g., an input element with a type attribute of "button"), an element identifier (e.g., a predetermined identifier string or substring), and/or any other aspect of an element that enables processor 205 to distinguish a navigation element and/or page manipulation element from elements other than navigation elements and/or page manipulation elements … modifies an identified element by associating executable code with the element. For example, processor 205 may set an "onclick" attribute of an HTML navigation element to refer to a page navigation function provided by script component 430 (shown in FIG. 6) and an identifier (e.g., an index value) of the second demonstration page. Similarly, the "onclick" attribute of an HTML page manipulation element may be set to refer to a page manipulation function provided by a corresponding page template 410 (shown in FIG. 6) and/or by script component 430. Notably, because the navigation elements and page manipulation elements are associated with executable code stored in memory area 210”]. generating an interactive element within a demonstration, wherein the interactive element, when implemented, is configured to cause a replay of the layout change in response to an identification of the trigger event [(e.g. see Gwin paragraphs 0060, 0062, 0064, 0065, 0066, 0088, 0090) ”a plurality of pages may be dynamically created 460 by script component 430. For example, each page 435 may be created 460 when it is requested by a user 201. Generally, the presented page 435 includes at least one navigation element. Navigation elements may include, without limitation, a link, a button, an image, and/or an icon … In a fully implemented application, selection of such a navigation element initiates a request to a remote server, which returns updated content, such as a new page or updated content for a portion of the presented page. In the demonstration, selection of the navigation element initiates 465 execution of executable code by script component 430 that mimics the behavior of a server. In addition, or alternatively, selection of an element in a page 435 may initiate 470 execution of code by the page 435 containing the selected element … Processor 205 identifies 715 navigation elements and/or page manipulation elements in the first demonstration page. For example, a navigation element may include a button provided by the page template and/or a link that corresponds to a data object (e.g., transaction ID 525, shown in FIG. 7) used to populate 710 the page template. Navigation elements and/or page manipulation elements within the page template may be elements that, when selected in a server-provided software application, initiate a request to a server computing device … User computing device 202 may also access 450 a layout component 415 to create the page. Layout component 415 specifies the position or arrangement of content elements within a page 435. For example, page 435 may include content from page template 410 and a description area, and layout component 415 may specify where the description area is displayed relative to the content. In some embodiments, layout component 415 defines a layout that is similar or identical to the layout of the software application being demonstrated … navigation elements within the page 435 such that selection of the navigation elements initiates 465 the creation 460 and/or presentation of a second page 435 by script component 430 … manipulates content defined by page template 410. In some embodiments, script component 430 includes executable code (e.g., in the JavaScript language) that modifies the state of content elements, such as whether a collapsible form is expanded, and/or populates one or more content elements with data … an identified element by associating executable code with the element. For example, processor 205 may set an "onclick" attribute of an HTML navigation element to refer to a page navigation function provided by script component 430 (shown in FIG. 6) and an identifier (e.g., an index value) of the second demonstration page. Similarly, the "onclick" attribute of an HTML page manipulation element may be set to refer to a page manipulation function provided by a corresponding page template 410 (shown in FIG. 6) and/or by script component 430”]. in response to a user command, editing the interactive element within the demonstration, wherein the user command is an instruction to edit the interactive element by modifying the layout change to an edited layout change, thereby obtaining an edited demonstration that comprises an edited interactive element, the edited interactive element is configured, when implemented, to cause the edited layout change in response to the identification of the trigger event [(e.g. see Gwin paragraphs 0060, 0066, 0069, 0090) ”Processor 205 modifies 720 one or more identified navigation elements and/or page manipulation elements to refer to a second demonstration page that immediately follows the first demonstration page in the linear navigation of the software demonstration. In some embodiments, processor 205 modifies an identified element by associating executable code with the element. For example, processor 205 may set an "onclick" attribute of an HTML navigation element to refer to a page navigation function provided by script component 430 (shown in FIG. 6) and an identifier (e.g., an index value) of the second demonstration page. Similarly, the "onclick" attribute of an HTML page manipulation element may be set to refer to a page manipulation function provided by a corresponding page template 410 (shown in FIG. 6) and/or by script component 430. Notably, because the navigation elements and page manipulation elements are associated with executable code stored in memory area 210, selection of such elements will not initiate a request to another computing device … page template 410 and manipulates content defined by page template 410. In some embodiments, script component 430 includes executable code (e.g., in the JavaScript language) that modifies the state of content elements, such as whether a collapsible form is expanded, and/or populates one or more content elements with data … as part of creating 460 a first page 435, script component 430 modifies one or more navigation elements within the page 435 such that selection of the navigation elements initiates 465 the creation 460 and/or presentation of a second page 435 by script component 430 … As defined by layout component 415, financial transaction 505 is displayed below a banner 510 that includes a logo 515. Banner 510 and/or logo 515 may be selected based on the intended viewer of the software demonstration. For example, if the demonstration is created for a potential new customer, the banner 510 and other content in search results page 500 may include colors, fonts, and/or images associated with the customer. Similarly, logo 515 may be the logo of the potential new customer. Such embodiments facilitate demonstrating how the appearance of a software application can be adjusted for a customer (e.g., in a "co-branding" context)”]. providing the edited demonstration to one or more end devices, wherein the edited demonstration of the web-based product is operable in a standalone environment and without relying on communications with any external server, wherein, the edited demonstration is enabled to implement the edited interactive element, wherein implementing the edited interactive element comprises, in response to identifying a user of an end device performing the user interaction with the page element, automatically causing the edited layout change [(e.g. see Gwin paragraphs 0019, 0091-0093 and Fig. 11) ”After the first demonstration page is created 702, user computing device 202 provides 725 the first demonstration page to a user. For example, media output component 215 may display the first demonstration page. In exemplary embodiments, providing 725 a demonstration page includes rendering the demonstration page using a web browser. It should be noted that elements within a demonstration page may be modified 720 as the demonstration page is provided 725 to the user (e.g., while the demonstration page is displayed) … User computing device 202 receives 730 a selection of an element (e.g., a navigation element or a page manipulation element) within the first demonstration page from a user. For example, the user may select an element via an input device 220. In response to the selection of the navigation element, processor 205 executes the executable code that was previously associated with the element when modifying 720 the elements … If the selected element is a navigation element, processor 205 executes the page navigation function provided by script component 430, referencing the identifier of the second demonstration page, to create 702 the second demonstration page, provide 725 the second demonstration page, and receive 730 a selection of an element within the second demonstration page. If the selected element is a page manipulation element, processor 205 executes the page manipulation function associated with the page manipulation element, thereby modifying 735 the appearance of the first demonstration page. For example, a portion of the first demonstration page may be expanded and/or collapsed, as described above with reference to FIG. 7 … The methods and systems described herein relate to a computer system that is configured to provide a demonstration of client-server software without requiring a network connection to a server computer system. The computer system executes software that mimics behavior of the server computer system including, for example, responding to user actions within a user interface”]. Gwin does not specifically teach executing the web-based product, performing a recordation of a session with the web-based product, during the recordation of the session, monitoring a plurality of click events or during the recordation of the session, monitoring layout changes to a display of the web-based product, the layout changes comprising at least Document Object Model (DOM) changes. However, in the same field of invention, Trigalo teaches: executing the web-based product [(e.g. see Trigalo paragraph 0023) ”Users of the user devices 120 may access at least one website hosted by the servers 140. The website may be, for example, an online retail platform, an e-commerce platform, and the like. In some embodiments, the user devices 120 can access an application installed on and executed by the servers 140. Such an application may include a mobile application (app), a cloud application, a web application, and the like. The various embodiments will be discussed herein with a reference to one or more websites, but are equally applicable to one or more applications”]. performing a recordation of a session with the web-based product [(e.g. see Trigalo paragraph 0047) ”session events are collected. Session events are interactions between a user and a webpage, occurring during the course of a session. Session events may be, as examples and without limitation, mouse clicks on a webpage element, keystrokes, scrolls up or down a page, other, like, events, and any combination thereof. Session events may be collected by one or more means including, without limitation, through a browser extension, included in an web browser installed on a user device … may be configured to record some or all of a user's in-session webpage interactions”]. during the recordation of the session, monitoring a plurality of click events [(e.g. see Trigalo paragraphs 0035, 0047) ”session events are collected. Session events are interactions between a user and a webpage, occurring during the course of a session. Session events may be, as examples and without limitation, mouse clicks on a webpage element … may be configured to record some or all of a user's in-session webpage interactions … session replays include “click” interaction events, wherein users click on a given webpage feature, each click in the individual session replays may be recorded as contributing to the individual sessions' click metrics”]. during the recordation of the session, monitoring layout changes to a display of the web-based product, the layout changes comprising at least Document Object Model (DOM) changes [(e.g. see Trigalo paragraphs 0045, 0055) ”classifiers are collected. Classifiers are data features describing content zones or elements as “active” or “inactive.” Particularly, a classifier may include an event (or mutation) on an HTML DOM allowing for classification of a target path as active for the event. An “active” content zone or element is a content zone or element with which user interaction generates a visual change to a webpage, thereby altering the DOM of the visible version of the webpage. Examples of user interactions which may be applicable to such alterations of the DOM of the visible version of a webpage include, without limitation, clicks, mouse hovers, scrolls up or down a webpage, other, like, interactions, and any combination thereof. An example of an “active” content zone or element is an expanding menu button which, when clicked, expands into a menu occupying the top half of the webpage, thereby altering the DOM. An “inactive” content zone or element is a content zone or element with which user interaction does not produce a visible change to a webpage. An example of an “inactive” element is a product image on a retail website, where no visible change is generated by a user's click on the product image … Webpage evolution may be recorded by, without limitation, downloading webpage versions at any point at which the webpage, webpage DOM, webpage HTML, and the like, undergo one or more changes during a session, as well as timestamps, counters describing the number of evolutions in a session, and the like. Webpage evolution recording may further include recording webpage evolutions in real-time, providing second-for-second playback of changes to a webpage, the webpage's DOM or HTML, or the like”]. Therefore, considering the teachings of Gwin and Trigalo, it would have been obvious to one having ordinary skill in the art before the effective filing date of the claimed invention to add executing the web-based product, performing a recordation of a session with the web-based product, during the recordation of the session, monitoring a plurality of click events and during the recordation of the session, monitoring layout changes to a display of the web-based product, the layout changes comprising at least Document Object Model (DOM) changes, as taught by Trigalo, to the teachings of Gwin because recording webpage evolutions in real-time allows for second-for-second playback of changes to a webpage caused by user input (e.g. see Trigalo paragraph 0045). As for dependent claim 2, Gwin and Trigalo teach the method as described in claim 1 and, but Gwin does not specifically teach the following limitation. However, Trigalo teaches: wherein the click event comprises a click of the operator on the page element, wherein the layout change that is triggered by the click comprises a DOM mutation [(e.g. see Trigalo paragraph 0060) ”classifiers are collected. Classifiers are data features describing content zones or elements as “active” or “inactive.” Particularly, a classifier may include an event (or mutation) on an HTML DOM allowing for classification of a target path as active for the event. An “active” content zone or element is a content zone or element with which user interaction generates a visual change to a webpage, thereby altering the DOM of the visible version of the webpage. Examples of user interactions which may be applicable to such alterations of the DOM of the visible version of a webpage include, without limitation, clicks, mouse hovers, scrolls up or down a webpage, other, like, interactions, and any combination thereof. An example of an “active” content zone or element is an expanding menu button which, when clicked, expands into a menu occupying the top half of the webpage, thereby altering the DOM”]. The motivation to combine is the same as that used for claim 1. As for dependent claim 5, Gwin and Trigalo teach the method as described in claim 1 and Gwin further teaches: wherein the edited demonstration is detached from a backend of the web-based product [(e.g. see Gwin paragraph 0019) ”The methods and systems described herein relate to a computer system that is configured to provide a demonstration of client-server software without requiring a network connection to a server computer system. The computer system executes software that mimics behavior of the server computer system including, for example, responding to user actions within a user interface”]. As for dependent claim 6, Gwin and Trigalo teach the method as described in claim 1 and Gwin further teaches: wherein said editing the interactive element enables customization of the demonstration for a potential client [(e.g. see Gwin paragraph 0069) ”As defined by layout component 415, financial transaction 505 is displayed below a banner 510 that includes a logo 515. Banner 510 and/or logo 515 may be selected based on the intended viewer of the software demonstration. For example, if the demonstration is created for a potential new customer, the banner 510 and other content in search results page 500 may include colors, fonts, and/or images associated with the customer. Similarly, logo 515 may be the logo of the potential new customer. Such embodiments facilitate demonstrating how the appearance of a software application can be adjusted for a customer (e.g., in a "co-branding" context)”]. wherein said editing the interactive element further comprises one of: modifying at least one text string displayed in a textual element of a page that comprises the page element; modifying at least one color or font of an element in the page; modifying the trigger event; and modifying a visual property of the page element [(e.g. see Gwin paragraphs 0059, 0069, 0090, 0091) ”Each page 435 corresponds to (e.g., is based on) a page template 410 that defines content (e.g., text, forms, and/or images) to be displayed in page 435. For example, page template 410 may be provided in Hyper Text Markup Language (HTML) format. Page template 410 may also include presentation information related to the content, such as one or more Cascading Style Sheets (CSS) definitions. The presentation information specifies the appearance (e.g., color and/or size) of content elements … if the demonstration is created for a potential new customer, the banner 510 and other content in search results page 500 may include colors, fonts, and/or images associated with the customer … In some embodiments, processor 205 modifies an identified element by associating executable code with the element. For example, processor 205 may set an "onclick" attribute of an HTML navigation element … elements within a demonstration page may be modified 720 as the demonstration page is provided 725 to the user”]. As for dependent claim 7, Gwin and Trigalo teach the method as described in claim 1 and Gwin further teaches: wherein the user interaction comprises a selection of the page element that causes at least first and second DOM changes, wherein said generating comprises generating the interactive element to comprise at least the layout change and a second layout change that is subsequent to the layout change, wherein the first and second DOM changes comprises the layout change and the second layout change, respectively [(e.g. see Gwin paragraphs 0060, 0074) ”script component 430 includes executable code (e.g., in the JavaScript language) that modifies the state of content elements, such as whether a collapsible form is expanded, and/or populates one or more content elements with data. For example, the executable code of script component 430 may copy data from object component 420 and/or data component 425 into the content defined by page template 410. Each page template 410 may be used to create multiple, different pages 435 within one demonstration and/or to create pages 435 within multiple demonstrations by manipulating the content of page template 410. In exemplary embodiments, script component 430 is executed by a web browser and manipulates the content of each page template 410 at least in part by accessing a document object model (DOM) that the web browser creates based on the page template 410 … The progression from a search page to search results page 500, and then to a transaction details page may represent a portion of a linear navigation between pages 435 in the software demonstration. Linear navigation may be created by defining any number of pages 435 in script component 430 and linking the pages 435 through navigation elements (e.g., transaction ID 525) and executable code. For example, a series of pages 435 may be shown in succession as a navigation element is selected in each page 435”]. As for independent claim 10, Gwin and Trigalo teach an apparatus. Claim 10 discloses substantially the same limitations as claim 1. Therefore, it is rejected with the same rational as claim 1. As for dependent claim 11, Gwin and Trigalo teach the apparatus as described in claim 10; further, claim 11 discloses substantially the same limitations as claim 2. Therefore, it is rejected with the same rational as claim 2. As for dependent claim 14, Gwin and Trigalo teach the apparatus as described in claim 10; further, claim 14 discloses substantially the same limitations as claim 5. Therefore, it is rejected with the same rational as claim 5. As for dependent claim 15, Gwin and Trigalo teach the apparatus as described in claim 10; further, claim 15 discloses substantially the same limitations as claim 6. Therefore, it is rejected with the same rational as claim 6. As for dependent claim 16, Gwin and Trigalo teach the apparatus as described in claim 10 and Gwin further teaches: wherein said editing the one or more interactives element enables customization of the demonstration for a potential client [(e.g. see Gwin paragraph 0069) ”As defined by layout component 415, financial transaction 505 is displayed below a banner 510 that includes a logo 515. Banner 510 and/or logo 515 may be selected based on the intended viewer of the software demonstration. For example, if the demonstration is created for a potential new customer, the banner 510 and other content in search results page 500 may include colors, fonts, and/or images associated with the customer. Similarly, logo 515 may be the logo of the potential new customer. Such embodiments facilitate demonstrating how the appearance of a software application can be adjusted for a customer (e.g., in a "co-branding" context)”]. As for independent claim 19, Gwin and Trigalo teach a computer program product. Claim 19 discloses substantially the same limitations as claim 1. Therefore, it is rejected with the same rational as claim 1. Claims 3 and 12 are rejected under 35 U.S.C. 103 as being unpatentable over Gwin et al. (US 2012/0204102 A1) in view of Trigalo et al. (US 2022/0043879 A1), as applied to claim 1 above, and further in view of Tiberg et al. (US 2023/0379378 A1). As for dependent claim 3, Gwin and Trigalo teach the method as described in claim 1, but do not specifically teach wherein said executing is performed by a software agent, the method further comprises enabling the operator to activate the recordation of the session via the software agent and to pause the recordation via the software agent. However, in the same field of invention, Tiberg teaches: wherein said executing is performed by a software agent, the method further comprises enabling the operator to activate the recordation of the session via the software agent and to pause the recordation via the software agent [(e.g. see Tiberg paragraph 0073 and Fig. 4) ”browser frame 104 may also comprise a recording button 112 that toggles (i.e., starts/stops) execution of recording module 94”]. Therefore, considering the teachings of Gwin, Trigalo and Tiberg, it would have been obvious to one having ordinary skill in the art before the effective filing date of the claimed invention to add wherein said executing is performed by a software agent, the method further comprises enabling the operator to activate the recordation of the session via the software agent and to pause the recordation via the software agent, as taught by Tiberg, to the teachings of Gwin and Trigalo because it allows the user to manually control when a new recording will be created (e.g. see Tiberg paragraph 0088). As for dependent claim 12, Gwin and Trigalo teach the apparatus as described in claim 10; further, claim 12 discloses substantially the same limitations as claim 3. Therefore, it is rejected with the same rational as claim 3. Claims 4, 8, 13, 17 and 20 are rejected under 35 U.S.C. 103 as being unpatentable over Gwin et al. (US 2012/0204102 A1) in view of Trigalo et al. (US 2022/0043879 A1), as applied to claim 1 above, and further in view of Smith et al. (US 2022/0004594 A1). As for dependent claim 4, Gwin and Trigalo teach the method as described in claim 1, but do not specifically teach wherein, after said providing, the edited demonstration is executed at the one or more end devices, executing the edited demonstration comprises identifying trigger events that appear in the one or more edited interactive elements, and replaying respective layout changes, without executing logic functionality of the web-based product. However, in the same field of invention, Smith teaches: wherein, after said providing, the edited demonstration is executed at the one or more end devices, executing the edited demonstration comprises identifying trigger events that appear in the one or more edited interactive elements, and replaying respective layout changes, without executing logic functionality of the web-based product [(e.g. see Smith paragraph 0074) ”The clone copy is saved to disk and can be reopened by end-users in any web browser, or reopened in the webpage cloning environment for further modification. Cloned webpages can be loaded back into the webpage cloning environment and wired up to visually replay the recorded interactions when needed. For example, when thin-layer clone 208 is opened for use by end user, webpage cloning system 204 loads and parses the JSON wire-up files. Webpage cloning system 204 dynamically generates pieces of source code in real-time to represent each of these wire-ups. source code representing these wire-ups is not hard-coded and stored on disk for thin-layer clone 208; rather, webpage cloning system 204 dynamically authors the source code on-the-fly as needed by off-line demonstration 210”]. Therefore, considering the teachings of Gwin, Trigalo and Smith, it would have been obvious to one having ordinary skill in the art before the effective filing date of the claimed invention to add wherein, after said providing, the edited demonstration is executed at the one or more end devices, executing the edited demonstration comprises identifying trigger events that appear in the one or more edited interactive elements, and replaying respective layout changes, without executing logic functionality of the web-based product, as taught by Smith, to the teachings of Gwin and Trigalo because off-line demonstrations from thin-layer clones in off-line simulations allows for execution with increased speed or efficiency (e.g. see Smith paragraph 0057). As for dependent claim 8, Gwin and Trigalo teach the method as described in claim 1 and Gwin further teaches: identifying in the click events the layout change [(e.g. see Gwin paragraphs 0079, 0081, 0083 and Figs. 8-10) ”Referring to FIG. 8, illustration 600 includes a linear navigation path 605 representing navigation through the software demonstration by a user … Referring to FIG. 9, illustration 650 includes a bypass navigation path 655 representing navigation through the software demonstration by a user … Referring to FIG. 10, illustration 675 includes a random navigation path 675 representing navigation through the software demonstration by a user”]. determining that the user interaction triggered the layout change; based on said determining, classifying the user interaction as the trigger event of the layout change [(e.g. see Gwin paragraphs 0092, 0093) ”User computing device 202 receives 730 a selection of an element (e.g., a navigation element or a page manipulation element) within the first demonstration page from a user. For example, the user may select an element via an input device 220. In response to the selection of the navigation element, processor 205 executes the executable code that was previously associated with the element when modifying 720 the elements … If the selected element is a navigation element, processor 205 executes the page navigation function provided by script component 430, referencing the identifier of the second demonstration page, to create 702 the second demonstration page, provide 725 the second demonstration page, and receive 730 a selection of an element within the second demonstration page. If the selected element is a page manipulation element, processor 205 executes the page manipulation function associated with the page manipulation element, thereby modifying 735 the appearance of the first demonstration page. For example, a portion of the first demonstration page may be expanded and/or collapsed, as described above with reference to FIG. 7”]. based on said classifying, generating the interactive element to comprise the user interaction and the layout change [(e.g. see Gwin paragraph 0090) ”In some embodiments, processor 205 modifies an identified element by associating executable code with the element. For example, processor 205 may set an "onclick" attribute of an HTML navigation element to refer to a page navigation function provided by script component 430 (shown in FIG. 6) and an identifier (e.g., an index value) of the second demonstration page. Similarly, the "onclick" attribute of an HTML page manipulation element may be set to refer to a page manipulation function provided by a corresponding page template 410 (shown in FIG. 6) and/or by script component 430”]. Gwin does not specifically teach wherein the recordation of the session comprises: identifying in the plurality of click events the user interaction of the operator with the page element. However, Trigalo teaches: wherein the recordation of the session comprises: identifying in the plurality of click events the user interaction of the operator with the page element [(e.g. see Trigalo paragraphs 0035, 0047, 0055) ”session events are collected. Session events are interactions between a user and a webpage, occurring during the course of a session. Session events may be, as examples and without limitation, mouse clicks on a webpage element … may be configured to record some or all of a user's in-session webpage interactions … session replays include “click” interaction events, wherein users click on a given webpage feature, each click in the individual session replays may be recorded as contributing to the individual sessions' click metrics … An example of an “active” content zone or element is an expanding menu button which, when clicked, expands into a menu occupying the top half of the webpage, thereby altering the DOM”]. Gwin and Trigalo do not specifically teach said determining comprising correlating the user interaction with the layout change based on an occurrence time of the user interaction and an occurrence time of the layout change. However, Smith teaches: said determining comprising correlating the user interaction with the layout change based on an occurrence time of the user interaction and an occurrence time of the layout change [(e.g. see Smith paragraphs 0068, 0085) ”webpage cloning system 204 generates timestamp 318 for each change in sequence of changes 316. Webpage cloning system 204 then generates generating ordered collection 320 for sequence of changes 316 … The order collection enables an off-line demonstration to reproduce a visual change in the graphical user interface while respecting a time duration of each change in the sequence as determined from the timestamps”]. The motivation to combine is the same as that used for claim 4. As for dependent claim 13, Gwin and Trigalo teach the apparatus as described in claim 10; further, claim 13 discloses substantially the same limitations as claim 4. Therefore, it is rejected with the same rational as claim 4. As for dependent claim 17, Gwin and Trigalo teach the apparatus as described in claim 10; further, claim 17 discloses substantially the same limitations as claim 8. Therefore, it is rejected with the same rational as claim 8. As for dependent claim 20, Gwin and Trigalo teach the computer program product as described in claim 19; further, claim 20 discloses substantially the same limitations as claim 4. Therefore, it is rejected with the same rational as claim 4. Claims 9 and 18 are rejected under 35 U.S.C. 103 as being unpatentable over Gwin et al. (US 2012/0204102 A1) in view of Trigalo et al. (US 2022/0043879 A1), as applied to claim 1 above, and further in view of Griffith, Steve “Monitor Events in Chrome Dev Tools” <URL: https://www.youtube.com/watch?v=DuIytlI63po> (dated 20 November 2020). As for dependent claim 9, Gwin and Trigalo teach the method as described in claim 1, but do not specifically teach wherein said monitoring the plurality of click events is performed by a browser debugger. However, in the same field of invention, Griffith teaches: wherein said monitoring the plurality of click events is performed by a browser debugger [(e.g. see Griffith @03:00-04:40) ”discussing monitoring events (e.g. mouseover, mouseout, mouseclick, mousemove, etc.) on web page elements within the Chrome browser Dev Tools interface and displaying detailed information about the monitored event in the console of the Chrome browser”]. Therefore, considering the teachings of Gwin, Trigalo and Griffith, it would have been obvious to one having ordinary skill in the art before the effective filing date of the claimed invention to add wherein said monitoring the plurality of click events is performed by a browser debugger, as taught by Griffith, to the teachings of Gwin and Trigalo because it allows the developer to learn valuable information about events occurring within the webpages (see Griffith video description). As for dependent claim 18, Gwin and Trigalo teach the apparatus as described in claim 10; further, claim 18 discloses substantially the same limitations as claim 9. Therefore, it is rejected with the same rational as claim 9. Response to Arguments Applicant's arguments, filed 12 January 2026, have been fully considered but they are not persuasive. Applicant argues that [“The cited art fails to teach or suggest the recited monitoring of the plurality of click events during a recordation of a session with a web-based product … Tiberg fails to teach or suggest monitoring a plurality of ‘click events’ during a recordation of a session with a web-based product ” (Pages 10-13)”]. The argument described above, in paragraph number 11, with respect to the newly added limitations to the independent claims has been considered, but is moot in view of the new grounds of rejection. Applicant argues that [“The cited art fails to teach or suggest the recited monitoring of the layout changes to the product’s display … Tiberg fails to teach or suggest monitoring layout changes to a display of the web-based product” (Pages 14-16)”]. The argument described above, in paragraph number 12, has been considered, but is moot in view of the new grounds of rejection. Applicant argues that [“The cited art fails to teach or suggest associating the click event with the trigger event … Gwin fails to teach at least: determining that a click event of the plurality of click events is a trigger event that triggers a layout change to the display” (Pages 17-20)”]. Examiner respectfully disagrees. Gwin teaches a click event of the plurality of click events is a trigger event that triggers a layout change to the display in paragraphs 0065, 0088-0090 of Gwin’s disclosure [“navigation elements and/or page manipulation elements based on an element type (e.g., an "input" element or an "anchor" element), an element attribute (e.g., an input element with a type attribute of "button") … processor 205 may set an "onclick" attribute of an HTML navigation element to refer to a page navigation function provided by script component 430 (shown in FIG. 6) and an identifier (e.g., an index value) of the second demonstration page”]. One of ordinary skill in the art, namely a software developer, would recognize that the page contains a plurality of navigation and page manipulation elements (e.g. input buttons) with associated onclick attributes/listeners whereby interacting with a particular navigation element can trigger the loading of a second different page. Additionally, newly cited Trigalo also teaches a click event of the plurality of click events is a trigger event that triggers a layout change to the display in paragraphs 0047, 0055 of Trigalo’s disclosure [“Session events may be, as examples and without limitation, mouse clicks … record some or all of a user's in-session webpage interactions … content zone or element is a content zone or element with which user interaction generates a visual change to a webpage, thereby altering the DOM of the visible version of the webpage. Examples of user interactions which may be applicable to such alterations of the DOM of the visible version of a webpage include, without limitation, clicks, mouse hovers, scrolls up or down a webpage, other, like, interactions, and any combination thereof. An example of an “active” content zone or element is an expanding menu button which, when clicked, expands into a menu occupying the top half of the webpage, thereby altering the DOM”]. One of ordinary skill in the art, namely a software developer, would recognize that a recorded click from the user can trigger a visible/DOM change. Thus, the combination adequately teaches applicant’s claimed limitation. Conclusion The prior art made of record and not relied upon is considered pertinent to applicant's disclosure. U.S. PGPub 2018/0123934 A1 issued to Gissing et al. on 03 May 2018. The subject matter disclosed therein is pertinent to that of claims 1-20 (e.g. recording an interaction session with a web application). Contact Information Any inquiry concerning this communication or earlier communications from the examiner should be directed to CHRISTOPHER J FIBBI whose telephone number is (571)-270-3358. The examiner can normally be reached Monday - Thursday (8am-6pm). 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, William Bashore can be reached at (571)-272-4088. 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 J FIBBI/Primary Examiner, Art Unit 2174
Read full office action

Prosecution Timeline

Feb 23, 2023
Application Filed
Mar 05, 2025
Non-Final Rejection — §103
Jun 05, 2025
Response Filed
Oct 08, 2025
Final Rejection — §103
Dec 01, 2025
Response after Non-Final Action
Jan 12, 2026
Request for Continued Examination
Jan 24, 2026
Response after Non-Final Action
Feb 02, 2026
Non-Final Rejection — §103 (current)

Precedent Cases

Applications granted by this same examiner with similar technology

Patent 12585866
AUTOMATED ENTRY OF EXTRACTED DATA AND VERIFICATION OF ACCURACY OF ENTERED DATA THROUGH A GRAPHICAL USER INTERFACE
2y 5m to grant Granted Mar 24, 2026
Patent 12561152
METHODS AND SYSTEMS FOR ADAPTIVE CONFIGURATION
2y 5m to grant Granted Feb 24, 2026
Patent 12535930
INTEROPERABILITY FOR TRANSLATING AND TRAVERSING 3D EXPERIENCES IN AN ACCESSIBILITY ENVIRONMENT
2y 5m to grant Granted Jan 27, 2026
Patent 12535941
USER INTERFACE FOR MANAGING INPUT TECHNIQUES
2y 5m to grant Granted Jan 27, 2026
Patent 12519999
Location Based Playback System Control
2y 5m to grant Granted Jan 06, 2026
Study what changed to get past this examiner. Based on 5 most recent grants.

AI Strategy Recommendation

Get an AI-powered prosecution strategy using examiner precedents, rejection analysis, and claim mapping.
Powered by AI — typically takes 5-10 seconds

Prosecution Projections

3-4
Expected OA Rounds
53%
Grant Probability
90%
With Interview (+37.6%)
4y 3m
Median Time to Grant
High
PTA Risk
Based on 376 resolved cases by this examiner. Grant probability derived from career allow rate.

Sign in with your work email

Enter your email to receive a magic link. No password needed.

Personal email addresses (Gmail, Yahoo, etc.) are not accepted.

Free tier: 3 strategy analyses per month