This page is a WIP. There is likely to be incomplete and/or missing information while the page is being built.
The Filter Field, found in the Results View of the Files Page and Products Page on the Smart Content pane, allows you to construct expressions that are used to perform advanced filtering operations. These expressions consist of 3 distinct elements:
A properly constructed expression is formatted as1):
[1::[2::]]3
Scope selectors and scope modifiers both consist of predefined alphabetic character sequences followed by two colons; e.g. “abc::”. Which characters a query pattern consists of depends on which of the other elements in the expression are [or are not] declared.
Within any given expression, only one scope selector can be declared. Depending on the scope selected, an expression may also contain a scope modifier that is used to further refine the set of information that is to be filtered.
As an example, consider an expression that matches the products purchased in the month of January 2016:
Scope Selector | | Scope Modifier | | | | Query Pattern _|__ _|_ _________|___________ / \/ \/ \ date::pur::[2016-01-01,2016-01-31]
In the example above, we first select the Date (Time) scope. Then, we indicate that we want to use the Purchased modifier—this is the default if no modifier is declared for the date scope.
When the parser that translates the text entered in the filter field into database queries encounters an unquoted space character in the expression, that space character is interpreted as a logical OR. If we apply this meaning to the sample expression Genesis 3
and the column of data being evaluated matches either “Genesis” or “3”, the result of the evaluation is true and the record is not filtered from the view.
To evaluate both words as a single entity (a phrase), encapsulate the words with quotation marks; i.e., "Genesis 3"
.
When the parser that translates the text entered in the filter field into database queries encounters the character sequence &&
(space, ampersand, ampersand, space), the sequence is interpreted as a logical AND. If we apply this meaning to the sample expression Genesis 3
, the column of data being evaluated must match both “Genesis” and “3” (separately) before the record is not filtered from the view.
Scope selectors tell the application which column of data the filter should be evaluated against. If explicitly declared, scope selectors are always declared at the beginning of the expression.
Important: This is the default for the Files page. This is also the default for the Products page in 4.9.1.x builds; the default for the Products page was changed to Name in 4.9.2.x builds.
The key scope selector is assumed if no other scope selector is declared (for Files and Products in 4.9.1.x, but Files only in 4.9.2.x). Use this selector to signify that the query pattern portion of the expression should be evaluated against the keywords assigned to an asset.
Scope Modifiers:
Query Pattern:
"key::word1 word2"
or "word1 word2"
)Examples:
Important: This is the default for the Products page in 4.9.2.x and later builds; the default for the Products page in 4.9.1.x builds is Keyword. This selector is not supported in builds prior to 4.9.2.x.
The name scope selector is assumed for Products (in 4.9.2.x and later builds) if no other scope selector is declared. Use this selector to signify that the query pattern portion of the expression should be evaluated against the name column of data.
Scope Modifiers:
Query Pattern:
"name::word1 word2"
or "word1 word2"
)Examples:
Use the group scope selector to signify that the query pattern portion of the expression should be evaluated against the Group of a product or asset.
Scope Modifiers:
Query Pattern:
"group::word1 word2"
)Examples:
group::New
group::None
"group::Custom Group"
6)Important: This scope selector is only supported for the Products page, when the Results View is displaying products.
Use the sku scope selector to signify that the query pattern portion of the expression should be evaluated against the Product ID / SKU of a package.
Scope Modifiers:
Query Pattern:
Examples:
sku::14812
sku::14812,13976,13439
sku::-15000
sku::15000-
sku::15000-15999
sku::[15000,15999]
sku::14812,13976,13439,15000-15999
Use the date scope selector to signify that the query pattern portion of the expression should be evaluated against a Date of a package/installation. If no scope modifier is declared, the default is Order Date.
Scope Modifiers:
Query Pattern:
# = ISO 8601 extended format datetime string; i.e. YYYY-MM-DD for dates or YYYY-MM-DDTHH:mm:ss, YYYY-MM-DDTHH:mm:ssTZD (e.g. 1997-07-16T19:20:30+01:00) for combined dates and times.
An additional set of dynamic keywords, enclosed between a pair of % symbols, used in the place of the # symbol above, are also supported. When these keywords are used independently, a range starting at the beginning of the specified duration and stopping at the end of the specified duration is implicit. When used explicitly within a range, the value of the datetime that will be substituted for the keyword will be either the beginning or the end of the specified duration, based on its position in the range.
n = A zero-based numeric value indicating the offset, into the past, from the current datetime.
%n_DAYS%
%n_WEEKS%
%n_MONTHS%
%n_YEARS%
Examples:
date::pur::[2016-01-01T00:00:01,2016-01-31T23:59:59]
date::instd::[%0_WEEKS%,%0_WEEKS%]
Scope modifiers are used to modify the selected scope. If declared at all, scope modifiers are always declared immediately following a Scope Selector, or in some cases another scope modifier.
Use the rel scope modifier to signify that the query pattern portion of the expression should be evaluated against the Released date.
Use the pur scope modifier to signify that the query pattern portion of the expression should be evaluated against the Purchased date.
Use the instd scope modifier to signify that the query pattern portion of the expression should be evaluated against the Installed date.
Use the upd scope modifier to signify that the query pattern portion of the expression should be evaluated against the Updated date.
Use the crd scope modifier to signify that the query pattern portion of the expression should be evaluated against the Created date.
The query pattern represents the value or expression to match.