ABACUS filtering involves a variety of operations that provides flexible capabilities to identifying and dissecting entities, properties and their values.
Operators
|
Data Types Supported
|
Description
|
Example
|
|
All
|
Without any direct operators, the evaluation will default to a contains type of filter for text and date data types. Numeric data types will behave more similarly to a equals operation, finding only exact matches. Dates have a few intricacies which are further elaborated on below.
|
Dog matches text values such as bigDogs and dogs
20 matches the integer 20
Jan matches dates 2020/1/1 and 10 January 2020
|
NOT
|
All
|
With this operation preceding any other value and/or operation, the results given will be the opposite of the matches found with the given filter.
|
NOT dog will match any values that don't contain dog
NOT 5 will match all integer values that are not equal to 5
|
*
|
Text
|
Wildcard that matches zero to many characters within a text based filter. When using no symbols for a text-based filter, wildcards implicitly exist on both ends of the value, where the existence of this symbol in the filter will remove these implicit wildcards.
|
D*gs will match text value dogs but not bigDogs
* will match any value (similar to empty values)
|
"", ''
|
Text
|
Using quotations around your value will force an exact text match which is case-sensitive.
|
"" will match any empty value
"Dogs" will match Dogs but not dogs or bigDogs
|
<, <=, >, >=
|
All
|
Arithmetic operators that will evaluate values based on their data type. For numeric data types a simple value comparison will be made, date data types will evaluate a comparison based on date value and text values with perform an alphabetic order comparison.
|
>5 will match all integer values greater than 5
<=Jan 2020 will match all dates that are prior to 1 January 2020
|
AND
|
All
|
Joining operator that combines and requires both the left and right side filters to match for the value to be considered a match.
|
>21 Aug 2020 AND <25 Oct 2020 will match all date values in between the given dates such as 20 September 2020
|
OR
|
All
|
Joining operator that combines and requires either the left or right side filter to match for the value to be considered a match.
|
5 OR > 10 will match integer values 5 and any value greater than 10
|
TODAY ( -/+ Digit )
|
Date
|
Keyword representing todays current date which is dynamically updated. Combine with a addition (+) or subtraction (-) with a whole number to add or subtract a number of days.
|
Note: In the following examples, the simulated date will be 1 January 2020
TODAY will match any date that is 1 January 2020
>TODAY AND <TODAY + 30 will match all date values between 1 January 2020 and 31 January 2020
|
Table of Filtering Operators and Tools
There are a number of different types of operators, and some may be categorised as particular kinds with discerning behaviour which include the following:
•Arithmetic - Value based comparison operators involving a less than, greater than and/or in combination with equals.
•Joining - Operators used to combine two or more evaluations.
Note
Arithmetic operators and regular comparison behaviour correlates strongly to the data type it is being filtered on, where in the case of filtering on a property the properties data type as set in the meta-model. If the given data does not parse correctly, a text-based comparison will occur instead.
Note
If the given values do not parse correctly to their data type, a text based default comparison will be used in place of it with the relevant operator or lack of.
Tip
The AND operator has a higher priority than the OR operator, and filters joined by AND operators will be evaluated first.
Filtering with Dates
When filtering with dates, there are a number of intricacies to note and be aware of concerning what is supported and how ABACUS filtering interprets dates.
•The first three characters of a month are accepted for the corresponding month. E.g. Dec is equivalent to December
•Contains type operations on dates are handled via a partial completion of the date filter.
-Jan 2019 will match all days in the month of January in year 2019
-2019 will match all dates in the year 2019
-October will match all dates that have the month October in them
•Combining dates with wildcard operators will turn it into a text based comparison and should not be used.
•Year must always come after day
•Valid separators between day month and year include:
-,
-.
-/
- (empty space)
--
![](Images/arrowup.gif)
See Also
Populating using Catalogues | Populating using Matrices
© 2001-2024 Avolution Pty Ltd, related entities and/or licensors. All rights reserved.
|