DETAILED ACTION
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
This action is in response to applicant’s arguments and amendments filed 4/02/2026, which are in response to USPTO Office Action mailed 11/07/2025. Applicant’s arguments have been considered with the results that follow: THIS ACTION IS MADE FINAL.
Status of Claims
Claims 1-20 are currently pending in the present application.
Allowable Subject Matter
Claim 11 objected to as being dependent upon a rejected base claim, but would be allowable if rewritten in independent form including all of the limitations of the base claim and any intervening claims.
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.
Claim 1-2, 6, 9, 12-13, 16 and 19-20 is/are rejected under 35 U.S.C. 103 as being unpatentable over Pooser et al. (US Patent No.: 5,812,134; Date of Patent: Sep. 22, 1998) in view of Elliot et al. (US PGPUB No. 2017/0116259; Pub. Date: Apr. 27, 2017) and Amacker et al. (US PGPUB No. 2017/0212926; Pub. Date: Jul. 27, 2017).
Regarding independent claim 1,
Pooser discloses a computer-implemented method for performing data analysis in a relational database, comprising: (a) bringing an electronic device of a user in communication with a computer server comprising said relational database that stores data objects in a non-hierarchical manner, which electronic device is configured to provide a graphical user interface, See Col. 24, lines 9-17, (Disclosing a system for interactive, dynamic, 3-D presentation of a database' structure that allows the user to navigate through the database to examine desired information. Data map 304 describes the structure and relationship of information units residing on hypermedia database 104. PNS data map 304 is maintained in a direct access storage device as a collection of tables in a relational database format, i.e. a computer-implemented method for performing data analysis in a relational database (e.g. users may navigate a map structure exposing data from an underlying hypermedia database 104), comprising: (a) bringing an electronic device of a user in communication with a computer server comprising said relational database that stores data objects in a non-hierarchical manner (e.g. PNS data map 304 is maintained as a collection of tables in a relational database format), which electronic device is configured to provide a graphical user interface (e.g. Note FIGs. 5a-5d illustrating molecules of a data map),
The examiner notes that the method of Pooser describes storing the PNS data map 304 as a series of tables in a relational database. One of ordinary skill in the art would recognize that a relational database is an example of a non-hierarchical storage as the relational data model comprises a plurality of tables comprising columns and rows, as opposed to a hierarchical data model where information may be organized in the form of a tree with parent-child relationships. The method of Pooser describes storing a data map as a collection of tables, i.e. data objects are stored in a non-hierarchical manner.
wherein said graphical user interface comprises a first region configured to display a graph created based on a mind map architecture, See Col. 24, lines 9-17, (Disclosing a system for interactive, dynamic, 3-D presentation of a database' structure that allows the user to navigate through the database to examine desired information. Data map 304 describes the structure and relationship of information units residing on hypermedia database 104. Data map 304 may be displayed using a PNS presentation module 304 for allowing run-time navigation of the hypermedia database 104.) See FIG. 4 & Col. 8, lines 6-18, (FIG. 4 illustrates a graphical representation of the organizational structure of the hypermedia database 104 and is presented as a series of interconnected nodes, i.e. wherein said graphical user interface comprises a first region configured to display a graph created based on a mind map architecture (e.g. a mind map is recognized as a visual representation of entities and relationship between said entities. The method of Pooser illustrates a graph structure comprising nodes and edges indicating entities and relationships between entities.).)
wherein said mind map architecture defines relationships between data sets of the data objects stored in the relational database and wherein said graph comprises one or more nodes each representing a data set of said data objects in said mind map architecture and a link connecting two nodes representing a relationship between two data sets in said mind map architecture, See Col. 24, lines 9-17, (Data map 304 describes the structure and relationship of information units residing on hypermedia database 104. Data map 304 may be displayed using a PNS presentation module 304 for allowing run-time navigation of the hypermedia database 104.) See Col. 12, lines 37-42, (Data description interpreter module creates data map 304 as a coded object reflecting the structure of hypermedia database 104.) See FIG. 4 & Col. 8, lines 6-18, (FIG. 4 illustrates a graphical representation of the organizational structure of the hypermedia database 104 and is presented as a series of interconnected nodes, i.e. wherein said mind map architecture defines relationships between data sets of the data objects stored in the relational database and wherein said graph comprises one or more nodes each representing a data set of said data objects in said mind map architecture and a link connecting two nodes representing a relationship between two data sets in said mind map architecture.)
(b) receiving an input via a node selected from said one or more nodes of said graph displayed within said graphical user interface, wherein said input is indicative of performing a task directed to at least a subset of said data objects, See Col. 8, lines 6-18, (A user can navigate database 104 via molecules of the data map to access desired information units.) See Col. 11, line 65 - Col. 12, line 8, ( PNS software 102 allows users to customize the panorama by selecting, arranging and saving nodes, threads and/or any portion of the panorama as parts of new threads or molecules, i.e. (b) receiving an input via a node selected from said one or more nodes of said graph displayed within said graphical user interface, wherein said input is indicative of performing a task directed to at least a subset of said data objects, wherein said task comprises a filtering operation;)
Pooser does not disclose a second region configured to display an interactive breadcrumb representing a search path,
wherein said interactive breadcrumb comprises a sequence of one or more visual graphical elements corresponding to one or more filtering operations in said search path and wherein said breadcrumb does not have said mind map architecture;
wherein said task comprises a filtering operation;
(c) upon execution of said filtering operation, generating a filtered data set from said at least said subset of said data objects and storing said filtered data set as an intermediate result in a memory unit during said task;
and (d) in response to execution of said filtering operation in (b), automatically generating a new visual graphical element in said interactive breadcrumb,
Elliot not discloses a second region configured to display an interactive breadcrumb representing a search path, See FIG. 1D & Paragraph [0041], (Disclosing a system for providing highly dynamic and interactive data analysis user interfaces which enable data analysts to quickly and efficiently explore large volume data sources. FIG. 1D illustrates a data analysis user interface 1000D comprising a view UI control 102D that illustrates a sequence of steps of an analysis that a user may interact with to navigate to earlier steps in the analysis path, i.e. a second region configured to display an interactive breadcrumb representing a search path (e.g. view UI control 102D is simultaneously displayed on a GUI with other elements of the analysis).)
wherein said interactive breadcrumb comprises a sequence of one or more visual graphical elements corresponding to one or more filtering operations in said search path and wherein said breadcrumb does not have said mind map architecture; See FIG. 1D & Paragraph [0041], (FIG. 1D illustrates a data analysis user interface 1000D comprising a view UI control 102D that illustrates a sequence of steps of an analysis that a user may interact with to navigate to earlier steps in the analysis path, i.e. wherein said interactive breadcrumb comprises a sequence of one or more visual graphical elements corresponding to one or more filtering operations in said search path (e.g. Note [0017] wherein each crumb in the breadcrumb path UI may indicate a filter) and wherein said breadcrumb does not have said mind map architecture (e.g. 120C is illustrated as a vertical sequence of squares interconnected by dotted lines).)
wherein said task comprises a filtering operation; See Paragraph [0011], (A data analysis may pursue a data analysis path that involves applying a filter, i.e. wherein said task comprises a filtering operation;)
(c) upon execution of said filtering operation, generating a filtered data set from said at least said subset of said data objects and storing said filtered data set as an intermediate result in a memory unit during said task; See Paragraph [0066]-[0067], (Data analysis system 100 may execute a data set query on a current session or result set wherein query execution is performed by a query backend 134. Note [0014] wherein data analysis system 100 maintains as session history for the analyst's data analysis paths and may provide various user interface features to allow the analyst to quickly return to any prior port in the data analysis path including views of a data result set such as a histogram view Note [0024] wherein the system may store several types of datasets such as a materialized saved set, i.e. (c) upon execution of said filtering operation, generating a filtered data set from said at least said subset of said data objects and storing said filtered data set as an intermediate result in a memory unit during said task (e.g. datasets may be stored and retrieved and subsequently updated).)
and (d) in response to execution of said filtering operation in (b), automatically generating a new visual graphical element in said interactive breadcrumb, See Paragraph [0065]-[0066], (Data analysis system 100 may receive a request to execute a data set query on a current session or result set.) See Paragraph [0069], The system may generate or update an interactive breadcrumb UI control such as breadcrumb 104A-D of FIGs. 1A-1D to display the summary of query detail information for data set queries performed for the current analysis path. Not e[0016] wherein the system may re-display various data set query results and associated data visualizations appearing earlier in a current data analysis path and may then decide to investigate a new data analysis path based on the earlier query result/visualization, i.e. (d) in response to execution of said filtering operation in (b), automatically generating a new visual graphical element in said interactive breadcrumb,)
Pooser and Elliot are analogous art because they are in the same field of endeavor, user interfaces for filtering and manipulating data. It would have been obvious to anyone having ordinary skill in the art before the effective filing date to modify the system of Pooser to include the method of storing filter operations as disclosed by Elliot. Paragraph [0023] of Elliot discloses that the system may save a data query set which allows a data analyst to return to an analysis path in progress at a later time for further exploration. This is beneficial in providing a user with options for storing or not storing a dataset in the case where an analyst does not want to save a convoluted analysis path.
Pooser-Elliot does not disclose the step wherein said new visual graphical element in said interactive breadcrumb corresponds to said filtering operation in (b), and wherein said new visual graphical element in said interactive breadcrumb is configured to provide options for receiving a user input for modifying said filtering operation in (b).
Amacker discloses the step wherein said new visual graphical element in said interactive breadcrumb corresponds to said filtering operation in (b), See Paragraph [0010], (Disclosing a system for editable search refinements that may be displayed with search results for a search query. A user may specify a search query which displays a breadcrumb comprising terms of the query used for the search. The breadcrumb can be editable inline such that the user can adjust or remove any of the refinements or search terms, add new refinements or terms, etc. For each change, the user may receive updated search results matching the updated breadcrumb, i.e. wherein said new visual graphical element in said interactive breadcrumb corresponds to said filtering operation in (b) (e.g. the updated breadcrumb is still the initial breadcrumb).)
and wherein said new visual graphical element in said interactive breadcrumb is configured to provide options for receiving a user input for modifying said filtering operation in (b). See Paragraph [0010], (A user may specify a search query which displays a breadcrumb comprising terms of the query used for the search. The breadcrumb can be editable inline such that the user can adjust or remove any of the refinements or search terms, add new refinements or terms, etc., i.e. wherein said new visual graphical element in said interactive breadcrumb is configured to provide options for receiving a user input for modifying said filtering operation in (b).)
Pooser, Elliot and Amacker are analogous art because they are in the same field of endeavor, search systems. It would have been obvious to anyone having ordinary skill in the art before the effective filing date to modify the system of Pooser-Elliot to include the method of providing updated breadcrumb icons as disclosed by Amacker. Paragraph [0021] of Amacker discloses that the use of a modifiable search breadcrumb allows users to select a variety of modifiers that may affect or not affect the display of search results without having to re-enter that information for each subsequent query. This represents an improvement in the user experience by reducing duplicate or redundant inputs.
Regarding dependent claim 2,
As discussed above with claim 1, Pooser-Elliot-Amacker discloses all of the limitations.
Elliot further discloses the step wherein said one or more filtering operations is selected from the group consisting of: filter on a property of a selected data object, filter on the number of selected relationships between selected data sets of said data objects, a complement operation of a previous filter operation, and select a subset of sorted search results. See Paragraph [0040] & [0042], (Users may provide input specifying query filter criteria to be executed over properties of a data set. An example is provided where a user’s selections cause a histogram to filter on the country “USA” as well as several additional interim filters and operations that have been applied during the current analysis path, i.e. wherein said one or more filtering operations is selected from the group consisting of: filter on a property of a selected data object (e.g. for example a value for a “country” property such as the name of a country).)
Regarding dependent claim 6,
As discussed above with claim 1, Pooser-Elliot-Amacker discloses all of the limitations.
Elliot further discloses the method further comprising outputting search result in a histogram view or in said graph. See Paragraph [0031], (Data analysis user interface 1000A allows users to present dataset results as any of the following view types: summary view; histogram; time series; time grid; heat map; pivot table; a set viewer; a table view; a pivot table, i.e. outputting search result in a histogram view.)
Regarding dependent claim 9,
As discussed above with claim 1, Pooser-Elliot-Amacker discloses all of the limitations.
Elliot further discloses the method further comprising reproducing a previous search result based at least in part on said intermediate result. See Paragraph [0055], (Tree views 202A, 202B allow a user to select a node in order to return to that point in the analysis path. Selection of the node causes the main data analysis workflow user interface to re-display the data query set result associated with that particular step of the analysis path, i.e. reproducing a previous search result based at least in part on said intermediate result.)
Regarding independent claim 12,
The claim is analogous to the subject matter of independent claim 1 directed to a computer system and is rejected under similar rationale.
Regarding dependent claim 13,
The claim is analogous to the subject matter of dependent claim 2 directed to a computer system and is rejected under similar rationale.
Regarding dependent claim 16,
The claim is analogous to the subject matter of dependent claim 6 directed to a computer system and is rejected under similar rationale.
Regarding dependent claim 19,
As discussed above with claim 12, Pooser-Elliot-Amacker discloses all of the limitations.
Elliot further discloses the step where said one or more computer processors are programmed to further store said filtering operation and criteria in the memory unit, wherein said criteria are inputted via said graph within said graphical user interface. See Paragraph [0068], (FIG. 4 illustrates method 400 comprising step 420 of maintaining session histories of dataset queries, which includes query details such as query parameters and/or operations performed which provide a visual reminder to the user about the dataset query and enable re-execution of the query, i.e. store said filtering operation and criteria in the memory unit (e.g. by persisting session histories).) See Paragraph [0057], (The tree views of the tree view UI control represent a computation graph of input sets to form a compute graph. Note [0065] wherein users may input query elements via user interfaces such as those illustrated in FIG. 1A-1D which include the interactive tree view element, i.e. wherein said criteria are inputted via said graph within said graphical user interface.)
Regarding dependent claim 20,
As discussed above with claim 19, Pooser-Elliot-Amacker discloses all of the limitations.
Elliot further discloses the step where said one or more computer processors are programmed to further reproduce a previous search result based at least in part on said intermediate result. See Paragraph [0055], (Tree views 202A, 202B allow a user to select a node in order to return to that point in the analysis path. Selection of the node causes the main data analysis workflow user interface to re-display the data query set result associated with that particular step of the analysis path, i.e. reproduce[ing] a previous search result based at least in part on said intermediate result.)
Claim(s) 4-5 and 15 is/are rejected under 35 U.S.C. 103 as being unpatentable over Pooser in view of Elliot and Amacker as applied to claim 1 above, and further in view of Fastabend et al. (US PGPUB No. 2010/0115446; Pub. Date: May 6, 2010).
Regarding dependent claim 4,
As discussed above with claim 1, Pooser-Elliot-Amacker discloses all of the limitations.
Pooser-Elliot-Amacker does not disclose the step wherein said at least one of said new visual graphical element displays visual options for a user to determine a logical relationship of said one or more filtering operations.
Fastabend further discloses the step wherein said at least one of said new visual graphical element displays visual options for a user to determine a logical relationship of said one or more filtering operations. See FIG. 4, (The GUI illustrating the segmentation model includes directional arrows which determine a flow or sequence of related subsets of data. For example, the “BOOKS” subset is linked to the “BOOKS, EXCELLENT” subset which represents a refinement or adjustment to the previous step, which is itself an adjustment of a previous filter, element 134A, i.e. determining a logical relationship of said one or more filtering operations.)
Pooser, Elliot, Amacker and Fastabend are analogous art because they are in the same field of endeavor, content delivery. It would have been obvious to anyone having ordinary skill in the art before the effective filing date to modify the system of Pooser-Elliot-Amacker to include the method of displaying user interface as disclosed by Fastabend. Paragraph [0015] of Fastabend discloses that the use of visual representations of filter operations in graphical user interfaces allows users to visually assess search inputs such that they can backtrack, edit and otherwise modify their inputs to achieve a desired result through an intuitive graphical means, thereby improving the user experience.
Regarding dependent claim 5,
As discussed above with claim 4, Pooser-Elliot-Amacker-Fastabend discloses all of the limitations.
Fastabend further discloses the step wherein said user input for modifying said at least one of said one or more filtering operations comprises a change of said logical relationship of said one or more filtering operations. See FIG. 4, (Filter options 130 allow a user to modify individual nodes of the segmentation model via the plurality of alternatives illustrated in FIG. 4 which include deleting, splitting, reducing, deduplication, etc., i.e. a change of said logical relationship of said one or more filtering operations.)
Pooser, Elliot, Amacker and Fastabend are analogous art because they are in the same field of endeavor, content delivery. It would have been obvious to anyone having ordinary skill in the art before the effective filing date to modify the system of Pooser-Elliot-Amacker to include the method of displaying user interface as disclosed by Fastabend. Paragraph [0015] of Fastabend discloses that the use of visual representations of filter operations in graphical user interfaces allows users to visually assess search inputs such that they can backtrack, edit and otherwise modify their inputs to achieve a desired result through an intuitive graphical means, thereby improving the user experience.
Regarding dependent claim 15,
The claim is analogous to the subject matter of dependent claim 4 directed to a computer system and is rejected under similar rationale.
Claim 3 and 14 is/are rejected under 35 U.S.C. 103 as being unpatentable over Pooser in view of Elliot and Amacker as applied to claim 1 above, and further in view of Adams et al. (US PGPUB No. 2016/0140243; Pub. Date: May 19, 2016).
Regarding dependent claim 3,
As discussed above with claim 2, Pooser-Elliot-Amacker discloses all of the limitations.
Pooser-Elliot-Amacker does not disclose the step wherein said complement operation of a previous filter operation provides complementary search results of said previous filter operation.
Adams discloses the step wherein said complement operation of a previous filter operation provides complementary search results of said previous filter operation. See Paragraph [0023], (Disclosing a scoped search engine configured to store search results representing a particular "scope output" that serves as a basis for subsequent searches, i.e. a previous filter operation. Subsequent searches may combine search results using logical operators (e.g. AND, NAND, OR and NOR) and can be iterated over search results in a sorted order.). The examiner notes that one of ordinary skill in the art would be able to recognize that "NOT", i.e. a complement operation, is within the scope of the term "logical operators". While Adams does not explicitly use the term "complement" or "complement operator", one of ordinary skill would know that other logical operations exist in addition to the examples provided by Paragraph [0023] of Adams.
Pooser, Elliot, Amacker and Adams are analogous art because they are in the same field of endeavor, search systems. It would have been obvious to anyone having ordinary skill in the art before the effective filing date to modify the system of Pooser-Elliot-Amacker to include the method of reusing scoped searches as disclosed by Adams. Doing so would allow the system to re-apply scoped searches that users may determine to be useful and/or relevant to their needs and also allows for further refining search spaces, allowing for greater control over search granularity.
Regarding dependent claim 14,
The claim is analogous to the subject matter of dependent claim 3 directed to a computer system and is rejected under similar rationale.
Claim 8 and 18 is/are rejected under 35 U.S.C. 103 as being unpatentable over Pooser in view of Elliot and Amacker, as applied to claim 1 above, and further in view of Weissinger et al. (US PGPUB No. 2017/0255536; Pub. Date: Sep. 7, 2017).
Regarding dependent claim 8,
As discussed above with claim 1, Pooser-Elliot-Amacker discloses all of the limitations.
Pooser-Elliot-Amacker does not disclose the method further comprising updating search result in response to adding or removing a visual graphical element of said plurality of visual graphical elements.
Weissinger discloses the method further comprising updating search result in response to adding or removing a visual graphical element of said plurality of visual graphical elements. See Paragraph [0182], (The graphical user interface allows users to drag-and-drop filter graph components in order to form and/or edit the filter graph, i.e. adding or removing a visual graphical element of said plurality of visual graphical elements.). The examiner notes that the editing the filter graph necessarily changes and/or updates the search results obtained by modifying the search area, therefore modifications to the filter graph necessarily results in updated search results.
Pooser, Elliot, Amacker and Weissinger are analogous art because they are in the same field of endeavor, data filtering. It would have been obvious to anyone having ordinary skill in the art before the effective filing date to modify the system of Pooser-Elliot-Amacker to include the method of managing and displaying a filter graph as disclosed by Weissinger. Doing so would provide a visual means for representing items and relationships across said items via a graph which most users would be able to digest and understand with relative ease.
Regarding dependent claim 18,
The claim is analogous to the subject matter of dependent claim 8 directed to a computer system and is rejected under similar rationale.
Claim 10 is/are rejected under 35 U.S.C. 103 as being unpatentable over Niyogi in view of HIRSCH and Elliot as applied to claim 1 above, and further in view of Kantabutra (US PGPUB No. 2009/0319564; Pub. Date: Dec. 24/2009)
Regarding dependent claim 10,
As discussed above with claim 1, Pooser-Elliot-Amacker discloses all of the limitations.
Pooser-Elliot-Amacker does not disclose the step wherein a definition of a relation comprises a unique identifier of said relation and a name of said relation;
wherein storing said data objects in said non-hierarchical manner comprises storing said data objects in defined fixed data structures, wherein said defined fixed data structures comprise: a first data structure, stored in a memory, comprising a definition of data sets in said relational database, wherein a definition of a data set comprises a unique data set identifier and a set name;
a second data structure, stored in said memory, comprising definitions of properties of objects in said relational database, wherein a definition of a property comprises a unique identifier of said property and a data set identifier, from said first data structure, said property is assigned to;
a third data structure, stored in said memory, comprising definitions of objects of said data sets in said relational database, wherein a definition of an object comprises a unique object identifier and a data set identifier, from said first data structure, said object is assigned to;
a fourth data structure, stored in said memory, comprising definitions of object values of said data sets in said relational database, wherein a definition of object value comprises an object identifier, from said third data structure, and a property of said data set, from said second data structure, said object value being assigned to;
a fifth data structure, stored in said memory, comprising definitions of relations of data sets in said relational database, and a sixth data structure, stored in said memory, comprising definitions of objects relations between said objects in said relational database, wherein a definition of an object relation associates a relation, from said fifth data structure, with two object identifiers from said third data structure.
Kantabutra discloses the step wherein a definition of a relation comprises a unique identifier of said relation and a name of said relation; See Paragraph [0041], (A relationship set name is used as a hash key to aid searches. Note [0076] wherein a relation “is the father of” represents a relationship between two entities, i.e. a unique identifier (e.g. the hash key) and a name (e.g. the example “is the father of” is text representing/identifying the relationship.)
wherein storing said data objects in said non-hierarchical manner comprises storing said data objects in defined fixed data structures, wherein said defined fixed data structures comprise: a first data structure, stored in a memory, comprising a definition of data sets in said relational database, See FIG. 1 and Paragraph [0074], (Disclosing a system for storing a database comprising data structures representing data entities. The system is divided into database sets 20, 20' comprising databases 30, 30', i.e. a definition of data sets in a relational database.).
wherein a definition of a data set comprises a unique data set identifier and a set name; See FIG. 2 and Paragraph [0077], (Element 31 represents a database name or a reference to a database name, i.e. a unique dataset identifier. Element 34 comprises optional information such as notes about a database, i.e. a set name.).
a second data structure, stored in said memory, comprising definitions of properties of objects in said relational database, See FIG. 1 and Paragraph [0045] and Paragraph [0048], (Entity sets 50, 50' comprise an ordered data structure 53 representing all the names and types of key attributes, i.e. a data structure comprising definitions of properties of object in said relational database.). The examiner notes that entity sets 50, 50' can be traced back through element 40 to reach database(s) 30 and 30', i.e. relational databases having entities (e.g. objects) stored.
wherein a definition of a property comprises a unique identifier of said property and a data set identifier, from said first data structure, said property is assigned to; See FIG. 3 and Paragraph [0046] and [0048], (Entity 50 comprises an entity set name 50, i.e. a dataset identifier from the first data structure, and ordered data structure 53 representing all the names and types of key attributes, i.e. a unique identifier of said property.).
a third data structure, stored in said memory, comprising definitions of objects of said data sets in said relational database, See FIG. 4 and Paragraph [0063], (Element 82 is a data structure that represents key attributes of an entity, i.e. definitions of objects of datasets in a relational database.).
wherein a definition of an object comprises a unique object identifier and a data set identifier, from said first data structure, said object is assigned to; See FIG. 4 and Paragraph [0062]-[0063], (Element 81 comprises a reference to the entity set to which an entity belongs, i.e. a dataset identifier from the first data structure. Element 82 comprises an object representing key attributes of the entity such as a hash keyed by attribute names, i.e. a unique object identifier.).
a fourth data structure, stored in said memory, comprising definitions of object values of said data sets in said relational database, See FIG. 1 and Paragraph [0061] and [0066], (Entities 80, 80', 80'' represent objects having an entity data structure or object plus attributes 88 pertaining to an entity, i.e. a data structure for providing definitions of object values of datasets in a relational database.).
wherein a definition of object value comprises an object identifier, from said third data structure, and a property of said data set, from said second data structure, said object value being assigned to; See Paragraph [0063], (Element 82 comprises an object representing key attributes of the entity such as a hash keyed by attribute names, i.e. a unique object identifier from the third data structure.). The examiner notes that attributes of entity plus 88 are necessarily attributes from those of ordered data structure 53 which represent ALL names and types of attributes, i.e. a property of a dataset from the second data structure.
a fifth data structure, stored in said memory, comprising definitions of relations of data sets in said relational database, See FIG. 1 and Paragraph [0067], (Relations 90 and 90', i.e. a data structure stored in memory comprising definitions of object relations between objects in a relational database.). The examiner notes that relations 90 can be traced back through elements 80, 50, and 40 to reach database(s) 30 and 30', i.e. relational databases having entities (e.g. objects) stored.
and a sixth data structure, stored in said memory, comprising definitions of objects relations between said objects in said relational database, See FIG. 7 and Paragraph [0068], (Array elements 95 in a relationship 90 structure or object, i.e. a data structure comprising definitions of object relations between objects in a relational database.). The examiner notes that relations 90 can be traced back through elements 80, 50, and 40 to reach database(s) 30 and 30', i.e. relational databases having entities (e.g. objects) stored.
wherein a definition of an object relation associates a relation, from said fifth data structure, with two object identifiers from said third data structure. See FIG. 1, (Note FIG. 1 where relationship R5 represents a relation, i.e. a relation from the fifth data structure, between entity plus 88' and entity 88'', i.e. relations are associated with two object identifiers from the third data structure.).
Pooser, Elliot, Amacker and Kantabutra are analogous art because they are in the same field of endeavor, search systems. It would have been obvious to anyone having ordinary skill in the art before the effective filing date to modify the system of Pooser-Elliot-Amacker to include the non-hierarchical architecture of data structures disclosed by Kantabutra. Doing so provides a non-hierarchical storage system where a plurality of separate but interconnected data structures store data and associations therein, thereby permitting any of the plurality of entities to participate in many roles across relationships.
Response to Arguments
Applicant’s arguments with respect to claim(s) 1 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.
Regarding independent claim 1,
Applicant’s arguments are as follows:
A. Niyogi does not disclose a relational database that stores data objects in a non- hierarchical manner in any relevant sense.
Applicant’s remarks and amendments to the claims have modified the scope of the claims and required the newly presented rejection as discussed above. The previous rejection has been withdrawn; therefore, applicant’s remarks are moot as Niyogi is not relied upon in the present rejection of independent claim 1.
The non-hierarchical manner in which data is stored as recited in claim 1 is recited merely at a nominal level and does not explicitly describe the manner in which the non-hierarchical organization is laid out (e.g. via the use of a plurality of data structures each storing different elements of a data object.). While the Specification describes these additional elements, they are not present in claim 1 and therefore not considered as it is not proper to import limitations from the Specifications into the claims.
B. HIRSCH does not disclose the claimed mind-map graph - HIRSCH's graph is a post-query display of article topics from external content repositories, not a persistent relational database schema graph from which filtering operations are launched.
Applicant’s remarks and amendments to the claims have modified the scope of the claims and required the newly presented rejection as discussed above. The previous rejection has been withdrawn; therefore, applicant’s remarks are moot as HIRSCH is not relied upon in the present rejection of independent claim 1.
C. Elliot does not disclose step (b) - receiving input via a node of the mind-map graph to initiate a filtering operation.
Applicant’s remarks and amendments to the claims have modified the scope of the claims and required the newly presented rejection as discussed above. The limitation at issue is disclosed as indicated in the rejection above in Pooser et al. (US Patent No.: 5,812,134; Date of Patent: Sep. 22, 1998).
D. Elliot does not disclose step (d) - breadcrumb elements configured to provide options for modifying the specific filtering operation they represent.
Elliot discloses at least the following portion of independent claim 1:
(d) in response to execution of said filtering operation in (b), automatically generating a new visual graphical element in said interactive breadcrumb,
As discussed in the rejection of claim 1 above.
Based on Applicant’s remarks, the examiner agrees that Elliot does not disclose the step “wherein said new visual graphical element in said interactive breadcrumb corresponds to said filtering operation in (b)”
Instead, Amacker is relied upon to disclose at least the limitation above as described in the rejection of independent claim 1.
Applicant’s remarks and amendments to the claims have modified the scope of the claims and required the newly presented rejection as discussed above.
E. The combination is improper - no motivation to combine the three references
Applicant’s remarks and amendments to the claims have modified the scope of the claims and required the newly presented rejection as discussed above. The previous rejection has been withdrawn; therefore, applicant’s remarks are moot.
Examiner’s Input
The following represents the examiner’s input relating to potential claim amendments and/or clarifications that would likely overcome the currently cited prior art and/or overcome a particular rejection:
Regarding independent claim 1,
Independent claim 1 makes nominal references to the non-hierarchical manner in which relational database data is stored in the following limitation:
(a) bringing an electronic device of a user in communication with a computer server comprising said relational database that stores data objects in a non-hierarchical manner, …
The examiner suggests the following amendment to independent claim 1 which would distinguish the claimed invention over the currently cited prior art for at least the reasons discussed above:
1.(Currently Amended) A computer-implemented method for performing data analysis in a relational database, comprising:
(a) bringing an electronic device of a user in communication with a computer server comprising said relational database that stores data objects in a non-hierarchical manner, which electronic device is configured to provide a graphical user interface, wherein said graphical user interface comprises a first region configured to display a graph created based on a mind map architecture and a second region configured to display an interactive breadcrumb representing a search path, wherein said mind map architecture defines relationships between data sets of the data objects stored in the relational database and wherein said graph comprises one or more nodes each representing a data set of said data objects in said mind map architecture and a link connecting two nodes representing a relationship between two data sets in said mind map architecture,
wherein said interactive breadcrumb comprises a sequence of one or more visual graphical elements corresponding to one or more filtering operations in said search path
and wherein said breadcrumb is visually distinct from said mind map architecture ,
wherein storing data objects in a non-hierarchical manner comprises storing data objects in two or more defined fixed data structures,
wherein the two or more data structures each comprise distinct attributes of the data objects;
(b) receiving an input via a node selected from said one or more nodes of said graph displayed within said graphical user interface, wherein said input is indicative of performing a task directed to at least a subset of said data objects, wherein said task comprises a filtering operation, and storing the filtering operation in a memory unit;
(c) upon execution of said filtering operation, generating a filtered data set from said at least said subset of said data objects and storing said filtered data set as an intermediate result in [a] the memory unit during said task;
and (d) in response to execution of said filtering operation in (b), automatically generating a new visual graphical element in said interactive breadcrumb, wherein said new visual graphical element in said interactive breadcrumb corresponds to said filtering operation in (b), and wherein said new visual graphical element in said interactive breadcrumb is configured to provide options for receiving a user input for modifying said filtering operation in (b).
Support for the proposed amendments is found in at least the following portions of Applicant’s Specification:
Paragraphs [0028] which relates to the plurality of data structures used to store data.
Paragraph [0029] which states the following: “which one or more filtering operations is stored in a memory unit“
The proposed amendments are merely an example of limitations that the examiner has determined may overcome the currently cited references and would require further search and/or consideration. Applicant is invited to contact the examiner for an Examiner Interview if considered appropriate to discuss the proposed amendments and advance prosecution.
Conclusion
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 Fernando M Mari whose telephone number is (571)272-2498. The examiner can normally be reached Monday-Friday 7am-4pm.
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, Ann J. Lo can be reached at (571) 272-9767. 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.
/FMMV/Examiner, Art Unit 2159 /ANN J LO/Supervisory Patent Examiner, Art Unit 2159