Prosecution Insights
Last updated: October 27, 2026
Application No. 18/627,343

TYPE-DEPENDENT MODIFICATION OF BLOCK ITEM HIERARCHY

Final Rejection §103
Filed
Apr 04, 2024
Examiner
AUGUSTINE, NICHOLAS
Art Unit
2178
Tech Center
2100 — Computer Architecture & Software
Assignee
Notion Labs Inc.
OA Round
2 (Final)
73%
Grant Probability
Favorable
3-4
OA Rounds
1y 1m
Est. Remaining
99%
With Interview

Examiner Intelligence

Grants 73% — above average
73%
Career Allowance Rate
607 granted / 834 resolved
+17.8% vs TC avg
Strong +28% interview lift
Without
With
+27.9%
Interview Lift
resolved cases with interview
Typical timeline
3y 8m
Avg Prosecution
31 currently pending
Career history
883
Total Applications
across all art units

Statute-Specific Performance

§101
10.6%
-29.4% vs TC avg
§103
37.4%
-2.6% vs TC avg
§102
48.8%
+8.8% vs TC avg
§112
1.9%
-38.1% vs TC avg
Black line = Tech Center average estimate • Based on career data from 834 resolved cases

Office Action

§103
DETAILED ACTION A. This action is in response to the following communications: Amendment filed: 08/12/2026. This action is made Final. B. Claims 1-20 remain pending. C. 35 USC 101 rejection is withdrawn due to amendment. Claim Rejections - 35 USC § 103 In the event the determination of the status of the application as subject to AIA 35 U.S.C. 102 and 103 (or as subject to pre-AIA 35 U.S.C. 102 and 103) is incorrect, any correction of the statutory basis (i.e., changing from AIA to pre-AIA ) for the rejection will not be considered a new ground of rejection if the prior art relied upon, and the rationale supporting the rejection, would be the same under either status. 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. Claim(s) 1-20 is/are rejected under 35 U.S.C. 103 as being unpatentable over Hemenway, James et al. (US Pub. 2014/0222181 A1), herein referred to as “Hemenway” in view of Mason, Dave et al. (US Pub. 2023/0060787), herein referred to as “Mason”. As for claims 1, 9 and 17, Hemenway teaches. A non-transitory, computer-readable storage medium and corresponding system of claim 9 and method of claim 17 comprising instructions recorded thereon, wherein the instructions, when executed by at least one data processor of a system, cause the system to (par. 49 hardware environment to execute software of the invention): Hemenway teaches in paragraph 40, a graphical user interface-based editor facility for defining control programs (e.g., control strategies described herein below) for processes is described, and reference is made to figures illustratively depicting an exemplary embodiment of the invention. In accordance with the illustrative embodiment, the editor facility provides graphical user interface-driven functionality including, among other things: supporting a set of appearance objects, defining a variety of depictions for a single control object (e.g., a control block object, a control strategy object, and the like), connecting input and output attributes of the control objects through graphical user interface object manipulations (e.g., drag and drop actions), establishing execution order of control objects through graphical user interface selection, designating distinct visual appearances for different types of connections, automatically resizing attribute display elements in response to relocation of the element within a control block's appearance object display, and dynamically updating the appearance objects based on changes to parameter settings for a control block. Hemenway in paragraph 57 give an overview structure of the software in FIG. 2 that depicts an exemplary set of interfaces/components associated with the control program editor facility. The interaction of software components (represented by circles) and data/objects (represented by rectangles) for the editor facility is depicted with reference to a strategy object 204 containing one or more control objects (e.g., control block and child strategy objects) and associated appearance objects 208. The illustrative components of the editor facility, residing on the workstation 102, provide/support the following: a graphical user interface-based control program (e.g., control strategy) editor, an editor of graphical depictions associated with control objects/templates from which control programs are created, and a live data display mechanism for displaying current values of control object I/O attributes corresponding to a control program defined and displayed via the control program editor. PNG media_image1.png 430 438 media_image1.png Greyscale receive, via a user interface presented on a client device of a first user, a relation modification request for de-linking a first block item of a first type from a second block item of a second type and linking the first block item to a third block item of the second type (par. 145 user makes a link between two nodes on the canvas user interface depicted in figure 9-10; par. 159 give further definition to how user makes relationship connections between blocks upon doing so the connection between two blocks can be replaced as mentioned in paragraph 160 and the system will automatically update the connection map shown in figure 10 to reflect user editing therefore a user can sever the connection between a first node and a second node and the system allow for reconnection to a third node as mentioned that a user can make relationship connections between any nodes and specifically attributes shared between nodes are visually connected as well; par. 166 give scenario of when a user deletes a control block representation; the editor further describes the action of deleting and adding new declarations to control objects mentioned in paragraphs 175-177); query the system for configuration information relating to displayed block items presented in a first workspace associated with the user interface, wherein the displayed block items are associated with the first block item (par. 160 makes that automatic determination upon user editing the nodes/ objects on the canvas and updates the graphical user interface of the connections added, deleted and modified by the user); obtain, in response to the query, a configuration for the first block item, wherein the configuration includes a type-specific inheritance preference associated with the first block item, and wherein the type-specific inheritance preference comprises a protocol for determining properties of the first block item that are inherited from properties of the third block item and for determining properties of the first block item that are retained from properties of the second block item; determine that the second block item and the third block item are of the second type (par. 175-177 the editor allows for the user to add and delete attributes of an object presented on the canvas of the user interface); PNG media_image2.png 430 434 media_image2.png Greyscale in response to determining that the second block item and the third block item are of the second type, generate attribute data, for the first block item and each subordinate block item of the first block item, according to the type-specific inheritance preference; and cause the user interface to display the first block item linked with the third block item according to the attribute data (par. 177-179 user creates connections between blocks through drag interactions the user is able to create input/output declarations for block connections between blocks and nested strategies (blocks shared across different hierarchical structures saved as a template for quick recall to the editor canvas); the system will automatically update appearance of objects (the graphical connections between objects) to accurately depict connections between them and among other things, attributes of said objects). Hemenway does not specifically detail multiple users and select multiple type-specific inheritance preferences, determine properties based on first type inheritance preference, set properties, generate attribute data and display value inherited from block items for each property; however in the same field of endeavor Mason teaches wherein the first block item is included in a first workspace that is concurrently accessible to multiple users including the first user and a second user, and wherein the first block item is modifiable, via the first workspace, by both the first user and the second user (par. 9 collaboration within the system by means of sandboxes. Sandboxes in turn may make said built applications, self-sufficient and possible to share with other individual workspaces, users, and organizations via linking mechanism. Users can login to the said platform, to their unique workspaces within their organizations, via a unique routing mechanism leveraging said sandboxes. Finally, said platform has a scripting language that can be used to write custom scripts at the client end, to further enrich said applications and organizations, which gets compiled and executed based on a scripting engine at the server-side. This scripting engine may use the platform's object-oriented structure and leverage the unique data binding mechanism to connect objects to each other, make changes within them, run various calculations, and send updates to target clients that triggered the execution of such scripts. Also, said scripts may be written within any object, at different containing properties of said object, or they may be standalone objects, like self-sufficient functions that get called from a variety of objects' events); Wherein the configuration includes multiple type-specific inheritance preferences that each correspond to a different item type (par. 98 different object instances (for example “colors” 9120 and “ButtonColor” 9130) are used across applications that inheritance preferences set by the sandbox (large global retainer that is used to be called upon to access classes of inherited preferences and object types to populate user interfaces for multiple applications to save on storage and promote united across applications); select, from the multiple type-specific inheritance preferences and based on the second type, a first type-specific inheritance preference of the multiple type-specific inheritance preferences for the second type; determine, based on the first type-specific inheritance preference, a first set of properties of the first block item that are to be inherited from the third block item and a second set of properties of the first block item that are to be retained from the second block item, generate attribute data, for the first block item and each subordinate block item of the first block item, by assigning to each property of the first set of properties a value of a corresponding property of the third block item and by retaining for each property of the second set of properties a value of a corresponding property of the second block item; and cause the user interface to display the first block item linked with the third block item according to the attribute data, wherein the first block item is displayed with the value inherited from the third block item for each property of the first set of properties and with the value retained from the second block item for each property of the second set of properties (par. 93 Object 3000 instances in discussions are termed “Original” Objects because they exist also in the Database 500 system as it was mentioned in the introduction section. In some embodiments, any interactions (Object 3000 instance additions, Object 3000 deletions, Object Property 3100 Value 3104 changes, etc.) with said Original Object instances within Server 100 system will have its exact corresponding action taken within the Database 500 system so that everything between the two systems (100 and 500) are in sync regarding Original Object instances at all times. Par. 96 Every Object 3000 instance has a ‘SandboxID’ 3009 field, a long integer value, that carries the Key 3002 value of its parent container Sandbox Object instance. A Sandbox parent instance Object may be directly above (direct parent) a contained child Object 3000 instance, or it can be many levels, within the tree structure, above an Object 3000 instance. In FIG. 3B every Appward Object instance has “sbxMain” 3902 as an immediate Sandbox Appward Object that it is contained within. This is why field 3009 contains the Key field of that immediate Sandbox container above it. The emphasis is on immediate because, in some embodiments, as shown in FIG. 3C, a Sandbox Object instance may contain another Sandbox Object underneath it and so on. The Object 3000 class model shows how the system overall knows which Appward Objects are contained immediately within which Sandboxes. For example, from FIG. 3C, “UserResources” 9100 is a Sandbox 3001 Class 3000 Instance with a Key 3002 value of 70000. It has many children Object instances, like “Colors” 9120 and Functions 9220, contained within its Children 3007 dictionary. Now, for example, said “Colors” 9120 Object 3000 instance, which is a Sandbox 3001 Class 3000 instance too, has a Key 3002 value of 80000 and children of its own. Note how “Colors” 9120 children “ButtonColor” 9130 and “LabelColor” 9140, both of “Color” class type, have their “SandboxID” 3009 field values to be 80000. This is because their immediate container Sandbox is “Colors” 9120, as mentioned before, and not “UserResources” 9100, that has a Key 3002 value of 80000. The Appward Object calls upon different classes of properties each set of classes of properties can be modified and the result is applied to the object if this property is linked. Delinking occurs if the object calls upon properties that are only associated with the client and not a shared global database. This is introduced in par. 100 with the IsClientOnly 3106 field given for Object Property. Par. 98 How this works, in some embodiments, is that the “OriginalID” 3010 field contains the Appward Object Key 3002 of the ORIGINAL Sandbox (Object 3000 instance) that has been linked. ONLY linked Object 3000 instances have this field containing a positive integer value. And ONLY Objects of Sandbox class type (“ClassName” 3001 field value of ‘Sandbox’) are allowed to be linked. So, for example, the reason for this said field may be to let the system know which Sandbox Objects are original ones (“OriginalID” 3010 value=0) versus linked ones (“OriginalID” 3010 value>0). In FIG. 3D, “UserResources” 9100a may be a Linked Sandbox of the Original “UserResouces” Sandbox Object 3000 instance 9100 that was shown in FIG. 3C. This is why even though 9100a has its own Object 3000 instance and its own Key 3002 value of 120000, it has “OriginalID” 3010 field value of 70000, which matches exactly the Key 3002 value of the original Sandbox 9100 Object (“UserResources”) from FIG. 3C. This also means that the 9100a values, the Objects contained, within both Props 3004 field and Children 3008 field are exactly the same as the original 9100 Object. They are not copies of the original, but references. So that if any change that occurs at the original (upgrades, improvements, etc.) are exactly reflected at the Linked Object 3000 instance 9100a and vice versa. For Example, “Colors” 9120 and “ButtonColor” 9130 Object instances that were mentioned in FIG. 3C are shown exactly and fully also in FIG. 3D under the linked “UserResources” 9100a Sandbox that itself may be contained within a new environment, in this case a User's workspace, “Raffi” 9001 Object 3000 instance (9100a “SandboxID” 3009 value is 100000 which matches the Key 3002 value of “Raffi” 9001 Object Instance). With this example, it may be demonstrated that a Resource, contained within a Sandbox Object, that may be comprised of valuable shared functions with smarts or styling Colors for different application user interfaces, can now be shared utilizing the Linking characteristics of a Sandbox Class 2000 instance that may be referenced by an Object 3000 instance. A property of a item type can be changed and different applications accessed by different users will see this modification across all application that reference this item type within respective applications that call upon item type. This allows for a central repository of objects that can be modified and this modification updates to all applications that use these objects to create easy customization and reliability in design and saving on storage. FIG. 8A, 8B, and 8C. In FIG. 8A diagram A, the Object Editor 3200 is depicted with one of the Color Object 3000 instances “ButtonBackColor” 9130. Note that this Object 3100 instance 9130 is a child of the UserResources 9100a Object instance. As said before the UserResources 9100a Object instance is linked from the original UserResources 9100 Object and shared throughout multiple Clients 1200 and applications. This demonstrates a first block item and that has multiple inheritance preferences from (e.g. second, third to the nth block items (classes)). For example Similarly, as shown in FIG. 3D, a custom developed application 9020, called “appCustomers”, that immediately has a linked Sandbox Object 9030a , called “sbxMain” with a positive “OriginalID” 3010 value of 50000, shows how one application (say under one organization) can be shared multiple times within each employee's, user's, workspace (example “Raffi” 9001 Object instance) to be utilized for that organization's business operations without the need to duplicate the application multiple times (equal to the number of employees who need to use that said application). As mentioned before, because each Sandbox defines the scope for its children to operate in, this said application (e.g., “appCustomers”) will work exactly the same way, given its building block Object instances are configured self-sufficiently, irrespective the environment or domain, user's workspace, it may be linked under. Finally, because Appward supports on the-fly-way development, and sharing of applications, linking of Sandbox Class Object 3000 instances can occur programmatically because the Object 3000 class has a “Link” method that may be utilized by different component in the Server 100 system that allows the sharing (linking) of Original Sandbox Object instances within new environments). It would have been obvious to one of ordinary skill in the art before the effective filing date of the claimed invention to combine Mason into Hemenway because Mason suggests in paragraph 5 there is a need for an enterprise software solution that is easily customizable, and that can be integrated at any level within the organization, even down to an individual within the organization. Organizations need the ability to create software solutions that meet the needs of individuals, teams, divisions, and companywide cross-divisional operations. Additionally, there is a need for customizable development of software, without the need for specialized programmers. There is also a need for such a customizable solution to execute and run in real-time so as to not cause stoppage in business processes. The invention described herein meets this need. As for claims 2, 10 and 18, Hemenway teaches. The non-transitory, computer-readable storage medium of claim 1, wherein the first block item is embedded as an in-page object of a first page corresponding to the second block item, and wherein the third block item corresponds to a second page (par. 127-128 the canvas can have multiple pages and each page can have multiple objects from the library wherein the objects can be nested and connected to show hierarchical relationships as discussed; therefore a first block can be on first page that has a connection to a second block and on a second page is a different block not shown on first page that we can term third block). As for claims 3, 11 and 19, Hemenway teaches. The non-transitory, computer-readable storage medium of claim 1, wherein the instructions for determining that the second block item and the third block item are of the second type cause the system to: determine, based on a block database associated with the first workspace, that a first attribute for the second block item and a second attribute for the third block item include an indication of the second type, wherein the indication of the second type includes an indication of one of a page, a task, an event, or a file (par. 70 example of different attributes that can be defined and associated with blocks/nodes; par. 159 give further definition to how user makes relationship connections between blocks upon doing so the connection between two blocks can be replaced as mentioned in paragraph 160 and the system will automatically update the connection map shown in figure 10 to reflect user editing therefore a user can sever the connection between a first node and a second node and the system allow for reconnection to a third node as mentioned that a user can make relationship connections between any nodes and specifically attributes shared between nodes are visually connected as well). As for claims 4, 12 and 20, Hemenway teaches. The non-transitory, computer-readable storage medium of claim 1, wherein the instructions for causing the user interface to display the first block item linked with the third block item cause the system to: determine that the second type corresponds to a page type; and based on determining that the second type corresponds to the page type, cause the user interface to display the first block item as an in-page object of a page corresponding to the third block item (par. 127-128 the canvas can have multiple pages and each page can have multiple objects from the library wherein the objects can be nested and connected to show hierarchical relationships as discussed; therefore a first block can be on first page that has a connection to a second block and on a second page is a different block not shown on first page that we can term third block). As for claims 5 and 13, Hemenway teaches. The non-transitory, computer-readable storage medium of claim 4, wherein the instructions cause the system to cause the user interface not to display the first block item as an object of a page corresponding to the second block item (par. 94 and 97 give one example by means of Remove Block function removes an identified block object from the strategy object 204. An input for Remove Block function includes the contained name of the block object to be removed and a flag indicating whether execution order needs to be updated in other remaining blocks in the strategy object 204; par. 127 is another example in which a second page is displayed instead of a first page). As for claims 6 and 14, Hemenway teaches. The non-transitory, computer-readable storage medium of claim 1, wherein the instructions for generating the attribute data cause the system to: determine, based on the configuration, a first property of the first block item that is retained from the second block item; determine a first attribute of the second block item, wherein the first attribute is associated with the first property; and generate the attribute data for the first block item to include the first attribute (par. 144 user adds attributes which can be from relationship with another block/node; par. 145 connecting attributes between blocks/nodes; par. 160 the strategy editor performs a set of automated tasks to update affected data structures and graphical user interfaces. In particular, the strategy editor updates the data structure for the selected control object to reflect the new preferred appearance object. The graphical representation for the new appearance object replaces the previous graphical representation. Furthermore, the connections are adjusted in accordance with the new appearance object's configuration). As for claims 7 and 15, Hemenway teaches. The non-transitory, computer-readable storage medium of claim 6, wherein the first attribute comprises one of a title, tag, timestamp, description, file, or item (par. 70 example of different attributes that can be defined and associated with blocks/nodes). As for claims 8 and 16, Hemenway teaches. The non-transitory, computer-readable storage medium of claim 1, wherein the instructions for generating the attribute data cause the system to: determine, based on the configuration, a first property of the first block item that is inherited from the third block item; determine a first attribute of the third block item, wherein the first attribute is associated with the first property; and generate the attribute data for the first block item to include the first attribute (par. 160 the strategy editor performs a set of automated tasks to update affected data structures and graphical user interfaces. In particular, the strategy editor updates the data structure for the selected control object to reflect the new preferred appearance object. The graphical representation for the new appearance object replaces the previous graphical representation. Furthermore, the connections are adjusted in accordance with the new appearance object's configuration; par. 171 (1) the user may add and remove attributes displayed on an appearance object; (2) the user may change the location of an attribute displayed on an appearance object; (3) the user may select a preferred appearance object (for those objects that have multiple appearance objects defined), e.g., Control Strategy Declarations/Connections; and (4) the user may modify the attributes for the appearance object). (Note:) It is noted that any citation to specific, pages, columns, lines, or figures in the prior art references and any interpretation of the references should not be considered to be limiting in any way. A reference is relevant for all it contains and may be relied upon for all that it would have reasonably suggested to one having ordinary skill in the art. In re Heck, 699 F.2d 1331, 1332-33, 216 USPQ 1038, 1039 (Fed. Cir. 1983) (quoting In re Lemelson, 397 F.2d 1006,1009, 158 USPQ 275, 277 (CCPA 1968)). Response to Arguments Applicant’s arguments with respect to claim(s) 1-20 have been considered but are moot because the new ground of rejection does not rely on any reference applied in the prior rejection of record for any teaching or matter specifically challenged in the argument. Conclusion THIS ACTION IS MADE FINAL. Applicant is reminded of the extension of time policy as set forth in 37 CFR 1.136(a). A shortened statutory period for reply to this final action is set to expire THREE MONTHS from the mailing date of this action. In the event a first reply is filed within TWO MONTHS of the mailing date of this final action and the advisory action is not mailed until after the end of the THREE-MONTH shortened statutory period, then the shortened statutory period will expire on the date the advisory action is mailed, and any nonprovisional extension fee (37 CFR 1.17(a)) pursuant to 37 CFR 1.136(a) will be calculated from the mailing date of the advisory action. In no event, however, will the statutory period for reply expire later than SIX MONTHS from the mailing date of this final action. Inquires Any inquiry concerning this communication should be directed to NICHOLAS AUGUSTINE at telephone number (571)270-1056. 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. PNG media_image3.png 213 559 media_image3.png Greyscale /NICHOLAS AUGUSTINE/Primary Examiner, Art Unit 2178 October 13, 2026
Read full office action

Prosecution Timeline

Apr 04, 2024
Application Filed
May 13, 2026
Non-Final Rejection mailed — §103
Aug 05, 2026
Applicant Interview (Telephonic)
Aug 05, 2026
Examiner Interview Summary
Aug 12, 2026
Response Filed
Oct 16, 2026
Final Rejection mailed — §103 (current)

Precedent Cases

Applications granted by this same examiner with similar technology

Patent 12763575
Procedure for Automatic Stability Detection of a Controller Cascade
3y 2m to grant Granted Oct 13, 2026
Patent 12749110
SYSTEM AND METHOD TO PROVIDE A VIRTUAL STORE-FRONT
3y 1m to grant Granted Sep 29, 2026
Patent 12750554
INTERACTION METHOD AND APPARATUS, ELECTRONIC DEVICE, AND COMPUTER READABLE STORAGE MEDIUM
3y 0m to grant Granted Sep 29, 2026
Patent 12743576
SYSTEM AND METHOD FOR CREATION AND HANDLING OF CONFIGURABLE APPLICATIONS FOR WEBSITE BUILDING SYSTEMS
3y 2m to grant Granted Sep 22, 2026
Patent 12725377
OBJECT MODELING BASED ON PROPERTIES AND IMAGES OF AN OBJECT
4y 2m to grant Granted Sep 01, 2026
Study what changed to get past this examiner. Based on 5 most recent grants.

Strategy Recommendation AI-generated — please review before filing

Get a prosecution strategy drawn from examiner precedents, rejection analysis, and claim mapping.
Typically takes 5-10 seconds — AI-generated, attorney review required before filing

Prosecution Projections

3-4
Expected OA Rounds
73%
Grant Probability
99%
With Interview (+27.9%)
3y 8m (~1y 1m remaining)
Median Time to Grant
Moderate
PTA Risk
Based on 834 resolved cases by this examiner. Grant probability derived from career allowance 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