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
Applicant’s Amendment, filed December 29, 2025, has been fully considered and entered. Accordingly, Claims 1-20 are pending in this application. Claims 1, 19, and 20 are Independent Claims and have been amended.
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.
The factual inquiries for establishing a background for determining obviousness under 35 U.S.C. 103 are summarized as follows:
1. Determining the scope and contents of the prior art.
2. Ascertaining the differences between the prior art and the claims at issue.
3. Resolving the level of ordinary skill in the pertinent art.
4. Considering objective evidence present in the application indicating obviousness or nonobviousness.
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.
Claims 1, 3-7, 13, 14, 16, 17, 19, and 20 are rejected under 35 U.S.C. 103 as being unpatentable over Chevalier (PG Pub. No. 2019/0080007 A1), and further in view of Louch (PG Pub. No. 2007/0130541 A1), Brown (PG Pub. No. 2020/0004730 A1), and Prophete (PG Pub. No. 2018/0365303 A1).
Regarding Claim 1, Chevalier discloses a method, comprising:
determining, by a process and for a particular customized user interface instance, specific configurations of one or more specific building blocks of a plurality of configurable atomic building blocks provided by a user interface platform (see Chevalier, paragraph [0050], where FIG. 7D illustrates an exemplary build interface 700 d that can be presented to the business expert 440 for this purpose. In an embodiment, the build interface 700 d can include a plurality of widgets 730 from which the business expert 440 can select … According to an embodiment, the business expert 440 can select a first widget 730 a associated with the end-user input field(s) 704 and a second widget 730 b associated with the search result output field(s) 710. The first and second widgets 730 a, 730 b define how the end-user input 704 and search result output 710 fields, respectively, will be presented to the end-user 500 b); and
determining, by the process, one or more information requirements of the one or more specific building blocks (see Chevalier, paragraph [0050], where FIG. 7D illustrates an exemplary build interface 700 d that can be presented to the business expert 440 for this purpose. In an embodiment, the build interface 700 d can include a plurality of widgets 730 from which the business expert 440 can select … According to an embodiment, the business expert 440 can select a first widget 730 a associated with the end-user input field(s) 704 and a second widget 730 b associated with the search result output field(s) 710. The first and second widgets 730 a, 730 b define how the end-user input 704 and search result output 710 fields, respectively, will be presented to the end-user 500 b).
Chevalier does not disclose:
the specific configurations defining hierarchies between child component data and parent component data that result in a component tree;
the specific building blocks corresponding to components of the component tree;
consolidating, by the process, the one or more information requirements into a single query request according to query language of a backend system, the single query request consisting of a single continuous subgraph and being computed by composing declarative data paths associated with the specific configurations of the one or more specific building blocks;
submitting, by the process, the single query request to the backend system to obtain a query result; and
render the particular customized user interface instance based on translating the query result into a structured data tree corresponding to the component tree, wherein each parent component of the structured data tree injects a portion of the query result into one or more of its child components by recursively passing resolved data based on declarative data paths.
Louch discloses:
the specific configurations defining hierarchies between child component data and parent component data that result in a component tree (see Louch, paragraph [0095], where in some implementations, widgets can be linked at several levels and conceptually organized into a widget hierarchy, for example, forming a ‘tree’ structure where the widget at the top of the tree is a ‘root’ widget and the other widgets are ‘leafs’ or ‘node’ widgets);
the specific building blocks corresponding to components of the component tree (see Louch, paragraph [0095], where in some implementations, widgets can be linked at several levels and conceptually organized into a widget hierarchy, for example, forming a ‘tree’ structure where the widget at the top of the tree is a ‘root’ widget and the other widgets are ‘leafs’ or ‘node’ widgets); and
render the particular customized user interface instance based on translating the query result into a structured data tree corresponding to the component tree (see Louch, paragraph [0036], where Fig. 5A is a screen shot depicting an implementation of linked widgets; see also paragraph [0037], where Fig. 5B illustrates the exchange of information between linked widgets), wherein each parent component of the structured data tree injects a portion of the query result into one or more of its child components by recursively passing resolved data based on declarative data paths (see Louch, paragraph [0094], where some implementations, a widget can behave like a server (“server widget”) and interact and exchange information with one or more “client” widgets; see also paragraph [0095], where in some implementations, widgets can be linked at several levels and conceptually organized into a widget hierarchy, for example, forming a ‘tree’ structure where the widget at the top of the tree is a ‘root’ widget and the other widgets are ‘leafs’ or ‘node’ widgets).
It would have been obvious to one of ordinary skill in the art before the effective filing date of the invention to combine Chevalier with Louch for the benefit of synchronization of widgets on dashboards (see Louch, Abstract).
Chevalier in view of Louch does not disclose:
consolidating, by the process, the one or more information requirements into a single query request according to query language of a backend system, the single query request consisting of a single continuous subgraph and being computed by composing declarative data paths associated with the specific configurations of the one or more specific building blocks; and
submitting, by the process, the single query request to the backend system to obtain a query result.
Brown in view of Prophete discloses:
consolidating, by the process, the one or more information requirements into a single query request according to query language of a backend system, the single query request consisting of a single continuous subgraph (see Brown, paragraph [0041], where when a client wants to access more than one resource at a time, it requires them to make multiple round-trips to the server to retrieve the data they need … this is in contrast to the GraphQL example described above where only a single query submitted to a single GraphQL endpoint is needed to access multiple APIs), and being computed by composing declarative data paths associated with the specific configurations of the one or more specific building blocks (see Prophete, paragraph [0034], where visualization queries are implemented using a declarative data language to encode query steps, widgets and bindings to capture and display query results in the formats selected by a user); and
submitting, by the process, the single query request to the backend system to obtain a query result (see Brown, paragraph [0041], where when a client wants to access more than one resource at a time, it requires them to make multiple round-trips to the server to retrieve the data they need … this is in contrast to the GraphQL example described above where only a single query submitted to a single GraphQL endpoint is needed to access multiple APIs).
It would have been obvious to one of ordinary skill in the art before the effective filing date of the invention to combine Chevalier and Louch with Brown for the benefit of integrating multiple requests to multiple data stores with multiple schemas into a single query (see Brown, Abstract, paragraph [0041]).
It would have been obvious to one of ordinary skill in the art before the effective filing date of the invention to combine Chevalier, Louch, and Brown with Prophete for the benefit of ultra-fast, ad hoc data exploration and faceted navigation on integrated, heterogeneous data sets (see Prophete, Abstract).
Regarding Claim 3, Chevalier in view of Louch, Brown, and Prophete discloses the method as in Claim 1, further comprising providing the plurality of configurable atomic building blocks for the user interface platform via one or more hard-coded software widgets (see Chevalier, paragraph [0050], where FIG. 7D illustrates an exemplary build interface 700 d that can be presented to the business expert 440 for this purpose. In an embodiment, the build interface 700 d can include a plurality of widgets 730 from which the business expert 440 can select … According to an embodiment, the business expert 440 can select a first widget 730 a associated with the end-user input field(s) 704 and a second widget 730 b associated with the search result output field(s) 710. The first and second widgets 730 a, 730 b define how the end-user input 704 and search result output 710 fields, respectively, will be presented to the end-user 500 b).
Regarding Claim 4, Chevalier in view of Louch, Brown, and Prophete discloses the method as in Claim 1, wherein the plurality of configurable atomic building blocks comprise one or more of simple blocks (see Chevalier, paragraph [0050], where the widgets 730 can include navigation widgets (e.g., a content tree, a navigation menu), input widgets 730 a (e.g., checkbox, text input), layout widgets 730 b (e.g., column box, content area), and selection widgets (e.g., drop-down list), to name a few), composite blocks, or blocks that contain parts that are dynamically populated by other building blocks.
Regarding Claim 5, Chevalier in view of Louch, Brown, and Prophete discloses the method as in Claim 1, wherein rendering comprises instantiating a user interface element by combining a supplied template within a particular building block with corresponding data from the query result (see Chevalier, paragraph [0061], where the query page 800 also includes a search results section 804, which provides the values of the attributes 515 corresponding to the selected result output fields 710; see also Fig. 8 where outputs are labeled ‘first name’, ‘last name’ and ‘occupation’).
Regarding Claim 6, Chevalier in view of Louch, Brown, and Prophete discloses the method as in Claim 1, wherein one or more of the plurality of configurable atomic building blocks comprise one or more templates to visualize entities and/or observability data (see Chevalier, paragraph [0049], where application design engine 300 can include a user interface builder component 330 that is configured to receive a request from the business expert 440 to design an end-user interface template 331 for the search service application for the first object; see also paragraph [0065], where once the associated backend data store 450 is identified, the deployment engine 350 can instantiate the search service application 600 for the backend data store 450 by configuring the search engine 520 associated with the data store 450 to expose the identified attributes).
Regarding Claim 7, Chevalier in view of Louch, Brown, and Prophete discloses the method as in Claim 6, further comprising determining specific templates of the one or more templates based on configuration of a corresponding building block of the one or more specific building blocks (see Chevalier, paragraph [0049], where application design engine 300 can include a user interface builder component 330 that is configured to receive a request from the business expert 440 to design an end-user interface template 331 for the search service application for the first object; see also paragraph [0065], where once the associated backend data store 450 is identified, the deployment engine 350 can instantiate the search service application 600 for the backend data store 450 by configuring the search engine 520 associated with the data store 450 to expose the identified attributes).
Regarding Claim 13, Chevalier in view of Louch, Brown, and Prophete discloses the method as in Claim 1, wherein one or more of the plurality of configurable atomic building blocks comprise a card that allows composition of elements selected from a group consisting of: cards, charts, divs, and images; wherein data input into the card is applied to an entity defined within the card (see Chevalier, paragraph [0042], where in FIG. 7A, the first object 514 is “customer.” In an embodiment, the search build model 321 can be configured to retrieve the attributes 515 associated the first object, and to present them in an attribute window 702. From here, the business expert 440 can select which attribute(s) 515 of the customer object 514 will be a query input(s) that forms a search criterion/criteria. In FIG. 7A, the business expert 440 can select an attribute 515 by “checking” a checkbox associated with an attribute 515. In other embodiments, the business expert 440 can “drag and drop” the attribute 515 from the attribute window 702 into a workspace window 703).
Regarding Claim 14, Chevalier in view of Louch, Brown, and Prophete discloses the method as in Claim 1, wherein rendering comprises waiting for all data to be available from the query result prior to rendering the particular customized user interface instance (see Chevalier, paragraph [0061], where the query page 800 also includes a search results section 804, which provides the values of the attributes 515 corresponding to the selected result output fields 710; see also Fig. 8 where outputs are labeled ‘first name’, ‘last name’ and ‘occupation’ [it is the position of the Examiner that displaying all the output data at the same time suggests waiting for all the data to be available from the query result prior to rendering the particular customized user interface instance]).
Regarding Claim 16, Chevalier in view of Louch, Brown, and Prophete discloses the method as in Claim 1, wherein rendering comprises generating one or more user interface elements selected from a group consisting of: labels, charts, graphs, tables, boxes, and cards (see Chevalier, paragraph [0061], where the query page 800 also includes a search results section 804, which provides the values of the attributes 515 corresponding to the selected result output fields 710; see also Fig. 8 where outputs are labeled ‘first name’, ‘last name’ and ‘occupation’).
Regarding Claim 17, Chevalier in view of Louch, Brown, and Prophete discloses the method as in Claim 1, further comprising implementing one or more instantiators to each create one or more user interface elements of the particular customized user interface instance according to the specific configurations of templates in the one or more specific building blocks (see Chevalier, paragraph [0049], where application design engine 300 can include a user interface builder component 330 that is configured to receive a request from the business expert 440 to design an end-user interface template 331 for the search service application for the first object; see also paragraph [0065], where once the associated backend data store 450 is identified, the deployment engine 350 can instantiate the search service application 600 for the backend data store 450 by configuring the search engine 520 associated with the data store 450 to expose the identified attributes).
Regarding Claim 19, Chevalier discloses a tangible, non-transitory, computer-readable medium having computer-executable instructions stored thereon that, when executed by a processor on a computer, cause the computer to perform a method comprising:
determining, by a process and for a particular customized user interface instance, specific configurations of one or more specific building blocks of a plurality of configurable atomic building blocks provided by a user interface platform (see Chevalier, paragraph [0050], where FIG. 7D illustrates an exemplary build interface 700 d that can be presented to the business expert 440 for this purpose. In an embodiment, the build interface 700 d can include a plurality of widgets 730 from which the business expert 440 can select … According to an embodiment, the business expert 440 can select a first widget 730 a associated with the end-user input field(s) 704 and a second widget 730 b associated with the search result output field(s) 710. The first and second widgets 730 a, 730 b define how the end-user input 704 and search result output 710 fields, respectively, will be presented to the end-user 500 b); and
determining, by the process, one or more information requirements of the one or more specific building blocks (see Chevalier, paragraph [0050], where FIG. 7D illustrates an exemplary build interface 700 d that can be presented to the business expert 440 for this purpose. In an embodiment, the build interface 700 d can include a plurality of widgets 730 from which the business expert 440 can select … According to an embodiment, the business expert 440 can select a first widget 730 a associated with the end-user input field(s) 704 and a second widget 730 b associated with the search result output field(s) 710. The first and second widgets 730 a, 730 b define how the end-user input 704 and search result output 710 fields, respectively, will be presented to the end-user 500 b).
Chevalier does not disclose:
the specific configurations defining hierarchies between child component data and parent component data that result in a component tree;
the specific building blocks corresponding to components of the component tree;
consolidating, by the process, the one or more information requirements into a single query request according to query language of a backend system, the single query request consisting of a single continuous subgraph and being computed by composing declarative data paths associated with the specific configurations of the one or more specific building blocks;
submitting, by the process, the single query request to the backend system to obtain a query result; and
render the particular customized user interface instance based on translating the query result into a structured data tree corresponding to the component tree, wherein each parent component of the structured data tree injects a portion of the query result into one or more of its child components by recursively passing resolved data based on declarative data paths.
Louch discloses:
the specific configurations defining hierarchies between child component data and parent component data that result in a component tree (see Louch, paragraph [0095], where in some implementations, widgets can be linked at several levels and conceptually organized into a widget hierarchy, for example, forming a ‘tree’ structure where the widget at the top of the tree is a ‘root’ widget and the other widgets are ‘leafs’ or ‘node’ widgets);
the specific building blocks corresponding to components of the component tree (see Louch, paragraph [0095], where in some implementations, widgets can be linked at several levels and conceptually organized into a widget hierarchy, for example, forming a ‘tree’ structure where the widget at the top of the tree is a ‘root’ widget and the other widgets are ‘leafs’ or ‘node’ widgets); and
render the particular customized user interface instance based on translating the query result into a structured data tree corresponding to the component tree (see Louch, paragraph [0036], where Fig. 5A is a screen shot depicting an implementation of linked widgets; see also paragraph [0037], where Fig. 5B illustrates the exchange of information between linked widgets), wherein each parent component of the structured data tree injects a portion of the query result into one or more of its child components by recursively passing resolved data based on declarative data paths (see Louch, paragraph [0094], where some implementations, a widget can behave like a server (“server widget”) and interact and exchange information with one or more “client” widgets; see also paragraph [0095], where in some implementations, widgets can be linked at several levels and conceptually organized into a widget hierarchy, for example, forming a ‘tree’ structure where the widget at the top of the tree is a ‘root’ widget and the other widgets are ‘leafs’ or ‘node’ widgets).
It would have been obvious to one of ordinary skill in the art before the effective filing date of the invention to combine Chevalier with Louch for the benefit of synchronization of widgets on dashboards (see Louch, Abstract).
Chevalier in view of Louch does not disclose:
consolidating, by the process, the one or more information requirements into a single query request according to query language of a backend system, the single query request consisting of a single continuous subgraph and being computed by composing declarative data paths associated with the specific configurations of the one or more specific building blocks; and
submitting, by the process, the single query request to the backend system to obtain a query result.
Brown in view of Prophete discloses:
consolidating, by the process, the one or more information requirements into a single query request according to query language of a backend system, the single query request consisting of a single continuous subgraph (see Brown, paragraph [0041], where when a client wants to access more than one resource at a time, it requires them to make multiple round-trips to the server to retrieve the data they need … this is in contrast to the GraphQL example described above where only a single query submitted to a single GraphQL endpoint is needed to access multiple APIs), and being computed by composing declarative data paths associated with the specific configurations of the one or more specific building blocks (see Prophete, paragraph [0034], where visualization queries are implemented using a declarative data language to encode query steps, widgets and bindings to capture and display query results in the formats selected by a user); and
submitting, by the process, the single query request to the backend system to obtain a query result (see Brown, paragraph [0041], where when a client wants to access more than one resource at a time, it requires them to make multiple round-trips to the server to retrieve the data they need … this is in contrast to the GraphQL example described above where only a single query submitted to a single GraphQL endpoint is needed to access multiple APIs).
It would have been obvious to one of ordinary skill in the art before the effective filing date of the invention to combine Chevalier and Louch with Brown for the benefit of integrating multiple requests to multiple data stores with multiple schemas into a single query (see Brown, Abstract, paragraph [0041]).
It would have been obvious to one of ordinary skill in the art before the effective filing date of the invention to combine Chevalier, Louch, and Brown with Prophete for the benefit of ultra-fast, ad hoc data exploration and faceted navigation on integrated, heterogeneous data sets (see Prophete, Abstract).
Regarding Claim 20, Chevalier discloses an apparatus, comprising:
one or more network interfaces to communicate with a network (see Chevalier, Fig. 1, for communication interface 112);
a processor coupled to the one or more network interfaces and configured to execute one or more processes (see Chevalier, Fig. 1, for processing unit 102);
a memory configured to store a process that is executable by the processor (see Chevalier, Fig. 1, for memory 104), the process, when executed, configured to:
determining, by a process and for a particular customized user interface instance, specific configurations of one or more specific building blocks of a plurality of configurable atomic building blocks provided by a user interface platform (see Chevalier, paragraph [0050], where FIG. 7D illustrates an exemplary build interface 700 d that can be presented to the business expert 440 for this purpose. In an embodiment, the build interface 700 d can include a plurality of widgets 730 from which the business expert 440 can select … According to an embodiment, the business expert 440 can select a first widget 730 a associated with the end-user input field(s) 704 and a second widget 730 b associated with the search result output field(s) 710. The first and second widgets 730 a, 730 b define how the end-user input 704 and search result output 710 fields, respectively, will be presented to the end-user 500 b); and
determining, by the process, one or more information requirements of the one or more specific building blocks (see Chevalier, paragraph [0050], where FIG. 7D illustrates an exemplary build interface 700 d that can be presented to the business expert 440 for this purpose. In an embodiment, the build interface 700 d can include a plurality of widgets 730 from which the business expert 440 can select … According to an embodiment, the business expert 440 can select a first widget 730 a associated with the end-user input field(s) 704 and a second widget 730 b associated with the search result output field(s) 710. The first and second widgets 730 a, 730 b define how the end-user input 704 and search result output 710 fields, respectively, will be presented to the end-user 500 b).
Chevalier does not disclose:
the specific configurations defining hierarchies between child component data and parent component data that result in a component tree;
the specific building blocks corresponding to components of the component tree;
consolidating, by the process, the one or more information requirements into a single query request according to query language of a backend system, the single query request consisting of a single continuous subgraph and being computed by composing declarative data paths associated with the specific configurations of the one or more specific building blocks;
submitting, by the process, the single query request to the backend system to obtain a query result; and
render the particular customized user interface instance based on translating the query result into a structured data tree corresponding to the component tree, wherein each parent component of the structured data tree injects a portion of the query result into one or more of its child components by recursively passing resolved data based on declarative data paths.
Louch discloses:
the specific configurations defining hierarchies between child component data and parent component data that result in a component tree (see Louch, paragraph [0095], where in some implementations, widgets can be linked at several levels and conceptually organized into a widget hierarchy, for example, forming a ‘tree’ structure where the widget at the top of the tree is a ‘root’ widget and the other widgets are ‘leafs’ or ‘node’ widgets);
the specific building blocks corresponding to components of the component tree (see Louch, paragraph [0095], where in some implementations, widgets can be linked at several levels and conceptually organized into a widget hierarchy, for example, forming a ‘tree’ structure where the widget at the top of the tree is a ‘root’ widget and the other widgets are ‘leafs’ or ‘node’ widgets); and
render the particular customized user interface instance based on translating the query result into a structured data tree corresponding to the component tree (see Louch, paragraph [0036], where Fig. 5A is a screen shot depicting an implementation of linked widgets; see also paragraph [0037], where Fig. 5B illustrates the exchange of information between linked widgets), wherein each parent component of the structured data tree injects a portion of the query result into one or more of its child components by recursively passing resolved data based on declarative data paths (see Louch, paragraph [0094], where some implementations, a widget can behave like a server (“server widget”) and interact and exchange information with one or more “client” widgets; see also paragraph [0095], where in some implementations, widgets can be linked at several levels and conceptually organized into a widget hierarchy, for example, forming a ‘tree’ structure where the widget at the top of the tree is a ‘root’ widget and the other widgets are ‘leafs’ or ‘node’ widgets).
It would have been obvious to one of ordinary skill in the art before the effective filing date of the invention to combine Chevalier with Louch for the benefit of synchronization of widgets on dashboards (see Louch, Abstract).
Chevalier in view of Louch does not disclose:
consolidating, by the process, the one or more information requirements into a single query request according to query language of a backend system, the single query request consisting of a single continuous subgraph and being computed by composing declarative data paths associated with the specific configurations of the one or more specific building blocks; and
submitting, by the process, the single query request to the backend system to obtain a query result.
Brown in view of Prophete discloses:
consolidating, by the process, the one or more information requirements into a single query request according to query language of a backend system, the single query request consisting of a single continuous subgraph (see Brown, paragraph [0041], where when a client wants to access more than one resource at a time, it requires them to make multiple round-trips to the server to retrieve the data they need … this is in contrast to the GraphQL example described above where only a single query submitted to a single GraphQL endpoint is needed to access multiple APIs), and being computed by composing declarative data paths associated with the specific configurations of the one or more specific building blocks (see Prophete, paragraph [0034], where visualization queries are implemented using a declarative data language to encode query steps, widgets and bindings to capture and display query results in the formats selected by a user); and
submitting, by the process, the single query request to the backend system to obtain a query result (see Brown, paragraph [0041], where when a client wants to access more than one resource at a time, it requires them to make multiple round-trips to the server to retrieve the data they need … this is in contrast to the GraphQL example described above where only a single query submitted to a single GraphQL endpoint is needed to access multiple APIs).
It would have been obvious to one of ordinary skill in the art before the effective filing date of the invention to combine Chevalier and Louch with Brown for the benefit of integrating multiple requests to multiple data stores with multiple schemas into a single query (see Brown, Abstract, paragraph [0041]).
It would have been obvious to one of ordinary skill in the art before the effective filing date of the invention to combine Chevalier, Louch, and Brown with Prophete for the benefit of ultra-fast, ad hoc data exploration and faceted navigation on integrated, heterogeneous data sets (see Prophete, Abstract).
Claim 2 is rejected under 35 U.S.C. 103 as being unpatentable over Chevalier, Louch, Brown, and Prophete as applied to Claims 1, 3-7, 13, 14, 16, 17, 19, and 20 above, and further in view of Agarwal (US Patent No. 11,030,068 B1).
Regarding Claim 2, Chevalier in view of Louch, Brown, and Prophete discloses the method as in Claim 1, wherein:
the user interface platform comprises an extensibility platform (see Chevalier, paragraph [0053], where the application design engine 300 can include a code library 340, which includes a plurality of code templates 342. Each template 342 includes code and metadata that can be loaded into extensible tools, e.g., an Integrated Development Environment (IDE), to automate the development of a family of software products).
Chevalier does not disclose the platform is configured to monitor observability data of a computer network topology. Agarwal discloses the platform is configured to monitor observability data (see Agarwal, column 11, lines 35-38, where monitoring service 306 receives the observability data collected by the collector 304 and provides critical insights into the collected trace data to a client, who may be an application owner or developer) of a computer network topology (see Agarwal, column 4, lines 48-54, where FIG. 5 illustrates an exemplary on-screen graphical user interface (“GUI”) comprising an interactive topology graph for an application, which facilitates visualizing cross-service relationships between services, both instrumented and uninstrumented, both comprised within the application and external to the application, in accordance with embodiments of the present invention).
It would have been obvious to one of ordinary skill in the art before the effective filing date of the invention to combine Chevalier with Agarwal for the benefit of representing instrumented and uninstrumented objects graphically (see Agarwal, Abstract).
Claims 8-12 are rejected under 35 U.S.C. 103 as being unpatentable over Chevalier, Louch, Brown, and Prophete as applied to Claims 1, 3-7, 13, 14, 16, 17, 19, and 20 above, and further in view of Gill (PG Pub. No. 2018/0309637 A1).
Regarding Claim 8, Chevalier in view of Louch, Brown, and Prophete discloses the method as in Claim 1, wherein:
Chevalier does not disclose one or more of the plurality of configurable atomic building blocks comprise a relationship map that defines domain-specific segments with paths for corresponding relationships between entities. Gill discloses one or more of the plurality of configurable atomic building blocks comprise a relationship map that defines domain-specific segments with paths for corresponding relationships between entities (see Gill, paragraph [0116], where as shown in Fig. 10A, two hosts are represented as nodes 1000a, 1000b, and a link 1005a indicates a relationship between the nodes 1000a-b).
It would have been obvious to one of ordinary skill in the art before the effective filing date of the invention to combine Chevalier with Gill for the benefit of microservice modeling and visualization (see Gill, Abstract).
Regarding Claim 9, Chevalier in view of Louch, Brown, and Prophete discloses the method as in Claim 8, wherein:
Chevalier does not disclose the relationship map further defines a health attribute to evaluate for the corresponding relationships. Gill discloses the relationship map further defines a health attribute to evaluate for the corresponding relationships (see Gill, paragraph [0114], where topology module 160 may query the enhanced time series data 116 to identify events indicating the health of the distributed cloud environment (e.g., critical events, warnings, lack of data, etc.).
It would have been obvious to one of ordinary skill in the art before the effective filing date of the invention to combine Chevalier with Gill for the benefit of microservice modeling and visualization (see Gill, Abstract).
Regarding Claim 10, Chevalier in view of Louch, Brown, Prophete, and Gill discloses the method as in Claim 8, further comprising:
Chevalier does not disclose receiving a patch for the relationship map from a different domain to add segments to the corresponding relationships. Gill discloses receiving a patch for the relationship map from a different domain to add segments to the corresponding relationships (see Gill, paragraph [0110], where one or more of the steps of FIG. 9 may be repeated. In some embodiments, one or more of steps 900 through 908 and step 308 may be repeated in response to receiving an additional set of inputs at the topology module 160).
It would have been obvious to one of ordinary skill in the art before the effective filing date of the invention to combine Chevalier with Gill for the benefit of microservice modeling and visualization (see Gill, Abstract).
Regarding Claim 11, Chevalier in view of Louch, Brown, and Prophete discloses the method as in Claim 1, wherein:
Chevalier does not disclose one or more of the plurality of configurable atomic building blocks comprise a topology map that embeds template-based components for nodes within a topology. Gill discloses wherein one or more of the plurality of configurable atomic building blocks comprise a topology map (see Gill, Claim 1, where the method includes displaying the topology map describing the plurality of compute instances of the distributed cloud environment) that embeds template-based components for nodes within a topology (see Gill, paragraph [0067], where the topology module 160 generates a user interface 175 including the topology map 180 in step 4. In this example, each compute instance is represented as a node and links between nodes represent relationships between the compute instances).
It would have been obvious to one of ordinary skill in the art before the effective filing date of the invention to combine Chevalier with Gill for the benefit of microservice modeling and visualization (see Gill, Abstract).
Regarding Claim 12, Chevalier in view of Louch, Brown, Prophete, and Gill discloses the method as in Claim 11, wherein:
Chevalier does not disclose a connection type specified within the topology map defines associated entities within the topology. Gill discloses a connection type specified within the topology map defines associated entities within the topology (see Gill, paragraph [0116], where in the example of Fig. 10A, the direction of the arrow corresponding to link 1005a indicates that node 1000a may be making calls or querying node 1000b).
It would have been obvious to one of ordinary skill in the art before the effective filing date of the invention to combine Chevalier with Gill for the benefit of microservice modeling and visualization (see Gill, Abstract).
Claim 15 is rejected under 35 U.S.C. 103 as being unpatentable over Chevalier, Louch, Brown, and Prophete as applied to Claims 1, 3-7, 13, 14, 16, 17, 19, and 20 above, and further in view of Kessenich (US Patent No. 6,292,802 B1).
Regarding Claim 15, Chevalier in view of Louch, Brown, and Prophete discloses the method as in Claim 1, wherein the rendering comprises:
Chevalier does not disclose rendering available data within the particular customized user interface instance prior to completion of the query result. Kessenich discloses rendering available data within the particular customized user interface instance prior to completion of the query result (see Kessenich, column 16, lines 1-9, where elements 1106-1110 may concurrently operate to transmit those results already generated back to database client process … early results of the query process are viewable at the user’s computer display even as later results are yet to be generated).
It would have been obvious to one of ordinary skill in the art before the effective filing date of the invention to combine Chevalier with Kessenich for the benefit of searching large collections of documents via a standard web browser (see Kessenich, Abstract).
Claim 18 is rejected under 35 U.S.C. 103 as being unpatentable over Chevalier, Louch, Brown, and Prophete as applied to Claims 1, 3-7, 13, 14, 16, 17, 19, and 20 above, and further in view of Tolle (PG Pub. No. 2007/0126736 A1).
Regarding Claim 18, Chevalier in view of Louch, Brown, and Prophete discloses the method as in Claim 1, wherein:
Chevalier does not disclose contextual properties override static properties within the specific configurations. Tolle discloses contextual properties override static properties within the specific configurations (see Tolle, paragraph [0070], where the basic rule for applying default stylistic formatting to a child datapoint, or element, of an interactive chart is that the child element is assigned the same stylistic formatting as the parent element: If (child displayed in chart) AND (format is USER OVERRIDE) Child Format=Parent Format=USER OVERRIDE Format [it is the position of the Examiner that inheriting stylistic formatting from the parent constitutes overriding the default child format, which is not patentably distinguishable from contextual properties overriding static properties at least in view of paragraph [0430] of the Applicant’s Specification]).
It would have been obvious to one of ordinary skill in the art before the effective filing date of the invention to combine Chevalier with Tolle for the benefit of providing persistent formatting for interactive charts (see Tolle, Abstract).
Response to Arguments
Applicant’s Arguments, filed December 29, 2025, have been fully considered, but they are moot in light of the new grounds of rejection.
Conclusion
The prior art made of record and not relied upon is considered pertinent to the Applicant’s disclosure:
Liu (PG Pub. No. 2022/0414104 A1), which concerns data aggregation in a hierarchy for query execution.
Applicant's amendment necessitated the new ground(s) of rejection presented in this Office action. Accordingly, THIS ACTION IS MADE FINAL. See MPEP § 706.07(a). 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.
Any inquiry concerning this communication or earlier communications from the examiner should be directed to FARHAD AGHARAHIMI whose telephone number is (571)272-9864. The examiner can normally be reached M-F 9am - 5pm ET.
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, Apu Mofiz can be reached at 571-272-4080. 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.
/FARHAD AGHARAHIMI/Examiner, Art Unit 2161
/APU M MOFIZ/Supervisory Patent Examiner, Art Unit 2161