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 .
Continued Examination Under 37 CFR 1.114
A request for continued examination under 37 CFR 1.114, including the fee set forth in 37 CFR 1.17(e), was filed in this application after final rejection. Since this application is eligible for continued examination under 37 CFR 1.114, and the fee set forth in 37 CFR 1.17(e) has been timely paid, the finality of the previous Office action has been withdrawn pursuant to 37 CFR 1.114. Applicant's submission filed on 8/07/2025 has been entered.
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 Niyogi et al. (US PGPUB No. 2005/0278351; Pub. Date: Dec. 15, 2005) in view of HIRSCH et al. (US PGPUB No. 2014/0098103; Pub. Date; Apr. 10, 2014) and Elliot et al. (US PGPUB No. 2017/0116259; Pub. Date: Apr. 27, 2017).
Regarding independent claim 1,
Niyogi 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 Paragraph [0033], (Disclosing a system for providing hierarchical navigation information relative to one or more databases within a distributed computer system. A user 108 navigates the distributed information system vi a SiteMapPath control known as a BreadCrumb or EyeBrow control. Note [0072] wherein users may interact with the system via client devices operatively coupled via a network, i.e. (a) bringing an electronic device of a user in communication with a computer server.) See Paragraph [0077], (SiteMapDataSource sits on top of the SiteNavigation infrastructure allowing the developer to expose non-hierarchical data formats such as relation data in a database that is normally not hierarchical for consumption by a control such as a TreeView control, i.e. 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 second region configured to display an interactive breadcrumb, See FIG. 5 & Paragraph [0079], (FIG. 5 illustrates a graphical user interface having multiple sections including a content space 525 comprising providing content in the form of a tree view of information being accessed/traversed by a user, i.e. a second region configured to display an interactive breadcrumb representing a search path.)
Niyogi does not disclose the step wherein said graphical user interface comprises a first region configured to display a graph created based on a mind map architecture,
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,
HIRSCH discloses the step wherein said graphical user interface comprises a first region configured to display a graph created based on a mind map architecture, See FIG. 1 & Paragraphs [0065]-[0066], (Disclosing a system for retrieving and displaying information. FIG. 1 illustrates a graphical user interface representing relationships between various topics or subtopics comprising a mind map-like graph of nodes connected by edges, 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. the graph structure displayed in FIG. 1 is based on a mind-map like layout).)
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 FIG. 1 & Paragraphs [0065]-[0066], (FIG. 1 illustrates a graphical user interface representing relationships between various topics or subtopics comprising a mind map-like graph of nodes connected by edges. The graph interface is displayed in response to a search instruction.) See Paragraph [0108], (Search results are received from a database 221, arranged into a single level graph and formed into a graph object by an Act search adapter 701. The graph is then transmitted to a front-end display for presentation to a user, such as via a JSON formatted string, 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 (e.g. the mind-map like graph comprises linked nodes showing contextual relationships between information) and a link connecting two nodes representing a relationship between two data sets (e.g. an edge defines a relationship or connection between nodes in a graph. Note [0066] wherein a displayed graph may be centered around a parent node connected to a plurality of child nodes representing information, articles, sub-topics, etc. that are relevant to the parent node, i.e. the nodes represent different but related datasets) in said mind map architecture,)
Niyogi and HIRSCH are analogous art because they are in the same field of endeavor, content display methods. It would have been obvious to anyone having ordinary skill in the art before the effective filing date to modify the system of Niyogi to include the method of displaying a graph interface based on a mind-map like structure as disclosed by HIRSCH. Paragraph [0127] of HIRSCH discloses that the client-side graph display is interactive and allows users to perform at least the following tasks: moving, renaming, deleting, and creation of new connection/edges and/or nodes. These functionalities may be passed on as query parameters which allows users to manipulate data of a data source without requiring knowledge of data manipulation languages.
Niyogi-HIRSCH does not disclose the step 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;
(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;
(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, wherein said new visual graphical element in said interactive breadcrumb corresponds to said filtering operation in (b), and wherein said new visual graphical operation in said interactive breadcrumb is configured to provide options for receiving a user input for modifying said filtering operation in (b).
Elliot discloses the step 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 [0042], (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 user interface 1000D comprising breadcrumb UI control 104D comprising a horizontal arrangement of filter steps that allow a user to navigate to previously executed query steps. User selections on each of the histogram selections include filters on certain attributes. For example, a particular histogram filter element may correspond to a histogram filtering a dataset by country such as "USA", i.e. wherein said interactive breadcrumb comprises a sequence of one or more visual graphical elements corresponding to one or more filtering operations (e.g. each histogram may represent different user selections of filters) in said search path and wherein said breadcrumb does not have said mind map architecture (e.g. view UI control 102D is illustrated as a vertical sequence of squares wherein each square represents a different histogram step, i.e. not a 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, wherein said task comprises a filtering operation; See Paragraph [0073]-[0074], (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. Data analysis system 100 comprises a graphical user interface including an interactive breadcrumb and/or tree view UI comprising a plurality of elements which display summary information about data set queries performed during a current session, analysis path or result set, 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.)
(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 a 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, i.e. (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), 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, i.e. wherein said new visual graphical element in said interactive breadcrumb corresponds to said filtering operation in (b) (e.g. each data set query is represented as an element of the breadcrumb control).)
and wherein said new visual graphical operation in said interactive breadcrumb is configured to provide options for receiving a user input for modifying said filtering operation in (b). See Paragraph [0070], (Data analysis system 100 may generate or update the interactive tree view UI control, which is configured to optionally display a summary of the query detail information for data set queries performed for the current analysis path. Note [0055] wherein the tree view UI may allow users to select a particular node in the current analysis path to return to that point. This allows the system to re-display the associated data query result set and/or visualization control which allows the user to launch a new analysis path from the selected point, i.e. wherein said new visual graphical operation in said interactive breadcrumb is configured to provide options for receiving a user input for modifying said filtering operation in (b).)
Niyogi, HIRSCH 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 Niyogi-HIRSCH to include the method of storing filter operations as disclosed by Elliot. Doing so would allow the system to recall previously constructed operations such that they may be reapplied to an existing data subset or a new data subset. This functionality improves the user experience by removing time spent performing repetitive tasks.
Regarding dependent claim 2,
As discussed above with claim 1, Niyogi-HIRSCH-Elliot 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, Niyogi-HIRSCH-Elliot 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, Niyogi-HIRSCH-Elliot 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, Niyogi-HIRSCH-Elliot 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, Niyogi-HIRSCH-Elliot 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 Niyogi in view of HIRSCH and Elliot 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, Niyogi-HIRSCH-Elliot discloses all of the limitations.
Niyogi-HIRSCH-Elliot 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.)
Niyogi, HIRSCH, Elliot 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 Niyogi-HIRSCH-Elliot 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, Niyogi-HIRSCH-Elliot-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.)
Niyogi, HIRSCH, Elliot 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 Niyogi-HIRSCH-Elliot 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 Niyogi in view of HIRSCH and Elliot 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, Niyogi-HIRSCH-Elliot discloses all of the limitations.
Niyogi-HIRSCH-Elliot 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.
Niyogi, HIRSCH, Elliot 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 Niyogi-HIRSCH-Elliot 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 Niyogi in view of HIRSCH and Elliot, 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, Niyogi-HIRSCH-Elliot discloses all of the limitations.
Niyogi-HIRSCH-Elliot 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.
Niyogi, HIRSCH, Elliot 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 Niyogi-HIRSCH-Elliot 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, Niyogi-HIRSCH-Elliot discloses all of the limitations.
Niyogi-HIRSCH-Elliot 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.).
Niyogi, HIRSCH, Elliot 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 Niyogi-HIRSCH-Elliot 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 and 12 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.
Applicant’s amendments necessitated the new grounds of rejection presented in this Office Action.
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, …
Claim 1 appears to focus more on the process of displaying information. However, the actual novel aspects of the claimed invention appear to center around the manner in which the relational database is designed as described in at least Paragraphs [0080]-[0093] of Applicant’s Specification which describe in-depth the plurality of data structures configured and connected to provide relational database data. Paragraph [0105] states that this arrangement of data structures allows the system to perform database queries without the need of joins, such as inner joins or outer joins which represents an improvement in terms of resource allocation and may improve database queries.
The examiner suggests incorporating limitations that describe characteristics of the non-hierarchical system that are not present in claims 10-11.
Any amendments would likely require further search and/or consideration.
Conclusion
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