Patent ID: 9348888
Filing Date: 2016-05-24
CPC Classification: G06F

Claim Text:
1. A method by which a computerized device filters a set of first data objects, each first data object including one or more primitive-valued fields and one or more object-valued fields each specifying a respective second data object as an embedded object of the respective first data object, comprising: receiving, by the computerized device, a filter object specifying filter criteria in the form of a set of filter expressions to be applied to fields of the first and second data objects; and processing, by the computerized device, each first data object and its respective embedded second filter objects according to the filter expressions, the processing including 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, the second iteration producing a second filter test result for each primitive-valued field of the respective embedded second filter object, and wherein 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 successful test results, wherein the filter expression loop includes an outer loop and an inner loop, the outer loop corresponding to a given iteration, the inner loop being repeated for each of the primitive-valued fields, and wherein the inner loop repeats for each of the fields of the first data object and includes a test whether a current field is object-valued before processing the current field as primitive-valued, a given repetition of the inner loop escaping to the outer loop for a field identified by the test as object-valued.