Hierarchical Object Model for Cascading Attribute Filters
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing data visualization applications face challenges in efficiently and accurately propagating filter conditions across multiple tables in a database, leading to incomplete or unexpected results due to unclear relationships between data sets, requiring users to have extensive knowledge of table joins and relationships.
Innovation Solution
The implementation of a hierarchical object model that organizes data sets in a tree structure, allowing users to select data sets and apply filter conditions, with the system automatically joining related data sets based on many-to-one relationships to generate new data sources, using inner and outer joins to propagate filter conditions effectively.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If automatic filtering of the entire database is performed, then relevant information extraction is improved, but computational cost increases and results may be incomplete or unexpected
Solution Approach 1:
The patent segments the database into multiple data sets organized in a hierarchical structure with parent-child relationships. Instead of filtering the entire database at once, the system divides the filtering task across segmented data sets that can be processed independently and then combined, reducing computational overhead while maintaining completeness of results
Solution Approach 2:
The patent performs preliminary organization of data into a hierarchical structure with predefined parent-child relationships before filtering. This preliminary structuring allows the system to efficiently determine which data sets need to be filtered based on the filter condition applied to a parent data set, avoiding unnecessary computation on unrelated data
2Reliability
If filter conditions are propagated to all joined tables, then comprehensive filtering is achieved, but user knowledge of table relationships is required
Solution Approach 1:
The patent introduces a hierarchical object model as an intermediary layer between the user and the underlying table relationships. This model automatically manages the propagation of filter conditions through parent-child relationships without requiring users to understand or specify the complex join relationships between tables, while still ensuring comprehensive filtering across all related data sets
Solution Approach 2:
The system performs self-service by automatically determining and executing the appropriate filter propagation path through the hierarchical structure. The object model autonomously identifies which child data sets need filtering based on parent data set relationships, eliminating the need for user intervention or knowledge of table relationships
3Manufacturing precision
If manual specification of join types is required, then precise control over filtering is achieved, but time consumption increases
Solution Approach 1:
The patent merges the determination of join types and filter propagation logic into a unified hierarchical object model. This integration allows the system to automatically select appropriate join strategies based on parent-child relationships without requiring separate user specifications, achieving both precise filtering control and reduced workflow time
Data Source
AI summary
A method generates a data source. A user selects a first data set from a displayed object model of a database. The object model includes data sets linked visually by many-to-one relationships to form a tree. The user selects a data field in the first data set and specifies a filter condition. The system identifies a second data set in the tree, and joins the first and second data sets. When the second data set is related to the first data set via one or more many-to-one relationships, rows of the second data set are joined to rows of the first data set that satisfy the first filter condition. When the second data does not satisfy the condition, the second data set is joined to rows of the first data set that satisfy the first filter condition, and all rows of the second data set are included in the generation.


