Iterative Filter Processing for Embedded Data Objects
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
In object models, filtering embedded objects is challenging when data is not stored in a database that supports powerful data manipulation operations like joins, especially in demo modes where data is stored in arrays of files and lacks database facilities for satisfying filtering requests.
Innovation Solution
A tree-based structure is used for filtering embedded objects, with an iterated filter expression loop that processes each object separately, creating new logical branches for embedded objects and applying filter criteria to both primitive-valued and object-valued fields, ensuring only requested properties are returned.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Ease of manufacture
If data is stored in arrays of files without database facilities, then storage simplicity is improved, but filtering capability deteriorates
Solution Approach 1:
The patent introduces a server application as an intermediary between the file-based storage system and the filtering requirements. This server application implements filtering logic that processes filter expressions against objects loaded from files, providing database-like filtering capabilities without requiring a actual database system. The server mediates between the simple file storage and the complex filtering needs, resolving the contradiction.
2Loss of information
If all object properties are returned, then completeness of data is improved, but bandwidth usage increases
Solution Approach 1:
The patent extracts only the specific properties requested by the client from the complete object data, rather than returning all properties. The filtering mechanism identifies which properties are needed based on the filter expressions and client requirements, then returns only those extracted properties. This reduces bandwidth usage while maintaining data completeness for the requested information.
3Measurement precision
If embedded objects are filtered separately with iterative processing, then filtering accuracy is improved, but processing time increases
Solution Approach 1:
The patent segments the filtering process into separate iterations for each embedded object level. The filter expression processing is divided into discrete steps where each embedded object is evaluated independently against the filter criteria. This segmentation ensures accurate filtering by systematically checking each object and its embedded objects, while the iterative structure allows for efficient early termination when filter conditions are not met, balancing accuracy with processing time.
Data Source
AI summary
A computerized device filters a set of first data objects each including primitive-valued fields and object-valued fields each specifying a respective second data object as an embedded object. A filter object specifies filter criteria as a set of filter expressions. Each first data object and its respective embedded second filter objects are processed according to the filter expressions. The processing includes iterated execution of a filter expression loop, a first iteration producing a first filter test result for each primitive-valued field of the first data object and initiating a second iteration for each object-valued field of the first data object, and the second iteration producing a second filter test result for each primitive-valued field of the respective embedded second filter object. A given first data object is included in a final set of filtered objects only if both the first and second filter test results are success test results.


