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 Parameters (WIP) pane, allows you to construct expressions that are used to perform advanced filtering operations. These expressions consist of five distinct elements:
A properly constructed expression is formatted as1):
[1::[2::[2::]]][3::[4::]]5
Scope selectors, scope modifiers, syntax selectors and syntax modifiers each 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 one or more scope modifiers, in sequence. When using a sequence of scope modifiers, the order in which they are declared makes a difference, so pay particular attention to it if you find yourself in that scenario.
As an example, consider an expression that matches the properties with names that contain “JCM”, irrespective of the case:
Scope Selector | | Query Pattern _|__ |_ / \/ \ name::JCM
In the example above, we first select the Name scope. Then, we indicate that we only want properties that contain “JCM”.
Notice that, in the example above, we did not declare a syntax selector or syntax modifier. It is important to understand that unless a syntax selector is declared, the default that will be used is equivalent to wc::*<something>*
, where <something>
represents the text to match, which is the syntax to define a Wildcard expression that matches properties that contain the text to match. Below we see the expression that is actually being used, in this case, to filter:
Scope Selector | | Syntax Selector | | | | Query Pattern _|__ |_ _|_ / \/ \/ \ name::wc::*JCM*
When the parser that evaluates the text entered in the filter field 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 name::JCM && lbl::Elbow
, the property being evaluated must match both name::JCM
AND lbl::Elbow
(separately) before the property is not filtered from the view.
Scope selectors tell the application which attribute of a property the filter should be evaluated against. If explicitly declared, scope selectors are always declared at the beginning of the expression.
Scope selectors are not supported in builds prior to 4.23.1.2. All builds prior to this are effectively using the equivalent of the Label scope selector with the Wildcard syntax selector.
Use the name scope selector to signify that the query pattern portion of the expression should be evaluated against the name attribute of a property.
Scope Modifiers:
Syntax Selectors:
Query Pattern:
Examples:
name::Victoria
name::wc::*JCM*
name::rx::ci::^jcm
This is the default scope selector - it is assumed 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 label attribute of a property.
Scope Modifiers:
Syntax Selectors:
Query Pattern:
Examples:
Victoria
label::Victoria
Use the class scope selector to signify that the query pattern portion of the expression should be evaluated against the name of the class (type) a property is.
See Property Objects for a list that contains the various Dz*Property
class names.
Scope Modifiers:
Syntax Selectors:
Query Pattern:
Examples:
class::DzIntProperty
class::wc::*Color*
class::rx::ci::^DzFloat
class::owner::DzMorph
Use the group scope selector to signify that the query pattern portion of the expression should be evaluated against the property group, or “path”, attribute of a property.
Scope Modifiers:
Syntax Selectors:
Query Pattern:
Examples:
group::Arm
group::wc::*Pose*
group::rx::ci::^/General
Use the alias scope selector to signify that the query pattern portion of the expression should be evaluated against whether a property is an alias of another property.
Scope Modifiers:
Syntax Selectors:
Query Pattern:
Examples:
alias::on
alias::true
alias::1
alias::yes
alias::discrete::yes
alias::target::yes
alias::off
alias::false
alias::0
alias::no
alias::discrete::no
alias::target::no
Use the animatable scope selector to signify that the query pattern portion of the expression should be evaluated against whether a property can be animated.
Scope Modifiers:
Syntax Selectors:
Query Pattern:
Examples:
animatable::on
animatable::true
animatable::1
animatable::yes
animatable::off
animatable::false
animatable::0
animatable::no
Use the locked scope selector to signify that the query pattern portion of the expression should be evaluated against whether a property is locked.
Scope Modifiers:
Syntax Selectors:
Query Pattern:
Examples:
locked::on
locked::true
locked::1
locked::yes
locked::off
locked::false
locked::0
locked::no
Use the follow scope selector to signify that the query pattern portion of the expression should be evaluated against whether a property is configured to cause projected morphs to automatically follow.
Scope Modifiers:
Syntax Selectors:
Query Pattern:
Examples:
follow::on
follow::true
follow::1
follow::yes
follow::discrete::yes
follow::dynamic::yes
follow::off
follow::false
follow::0
follow::no
follow::discrete::no
follow::dynamic::no
Use the hidden scope selector to signify that the query pattern portion of the expression should be evaluated against whether a property is hidden.
Scope Modifiers:
Syntax Selectors:
Query Pattern:
Examples:
hidden::on
hidden::true
hidden::1
hidden::yes
hidden::discrete::yes
hidden::dynamic::yes
hidden::off
hidden::false
hidden::0
hidden::no
hidden::discrete::no
hidden::dynamic::no
Use the favorite scope selector to signify that the query pattern portion of the expression should be evaluated against whether a property has been marked as a favorite.
The results of this filter are the same as selecting the “Favorites” filter near the top of the adjacent Navigation View, except that use of this filter also indicates which property groups the properties are assigned to.
Scope Modifiers:
Syntax Selectors:
Query Pattern:
Examples:
favorite::on
favorite::true
favorite::1
favorite::yes
favorite::off
favorite::false
favorite::0
favorite::no
Use the used scope selector to signify that the query pattern portion of the expression should be evaluated against whether a property's current value is different than the value in its definition.
The results of this filter are the same as selecting the “Currently Used” filter near the top of the adjacent Navigation View, except that use of this filter also indicates which property groups the properties are assigned to.
Scope Modifiers:
Syntax Selectors:
Query Pattern:
Examples:
used::on
used::true
used::1
used::yes
used::off
used::false
used::0
used::no
Use the restored scope selector to signify that the query pattern portion of the expression should be evaluated against whether a property's current value is the same as its default value.
Scope Modifiers:
Syntax Selectors:
Query Pattern:
Examples:
restored::on
restored::true
restored::1
restored::yes
restored::off
restored::false
restored::0
restored::no
Use the control scope selector to signify that the query pattern portion of the expression should be evaluated against whether a property participates in a controlled relationship with another property.
Scope Modifiers:
Syntax Selectors:
Query Pattern:
Examples:
control::on
control::true
control::1
control::yes
control::discrete::yes
control::sub::yes
control::off
control::false
control::0
control::no
control::discrete::no
control::sub::no
Use the key scope selector to signify that the query pattern portion of the expression should be evaluated against the sequencing of values for a property over time.
Scope Modifiers:
Syntax Selectors:
Query Pattern:
Examples:
key::yes
key::no
key::count::2
key::frame::0
key::frame::0,1
key::frame::[5,10]
key::frame::0 && key::frame::1
key::second::1
Use the value scope selector to signify that the query pattern portion of the expression should be evaluated against the value of a property.
Scope Modifiers:
Syntax Selectors:
Query Pattern:
Examples:
value::numeric::clamp::on
value::numeric::clamp::off
value::float::0.1
value::float::default::0
value::float::raw::1
value::enum::Catmark
value::enum::int::0
value::enum::int::1
Use the asset scope selector to signify that the query pattern portion of the expression should be evaluated against asset information for a property.
Scope Modifiers:
A scope modifier must be specified.
Syntax Selectors:
Query Pattern:
Examples:
asset::author::Daz ?
asset::author::wc::*Daz*
asset::author::rx::ci::^daz 3d$
asset::author::rx::ci::^(?!daz 3d)
Use the present scope selector to signify that the query pattern portion of the expression should be evaluated against the presentation for a property.
Scope Modifiers:
Syntax Selectors:
Query Pattern:
Examples:
present::type::Shape
present::type::wc::*Generated
present::type::rx::ci::pose
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 owner scope modifier to signify that the query pattern portion of the expression should be evaluated against the owner of a property - descendants of DzElement.
Scope Selectors:
Scope Modifiers:
Syntax Selectors:
::inherits()
Use the numeric scope modifier to signify that the query pattern portion of the expression should be evaluated against numeric property types - descendants of DzNumericProperty.
Scope Selectors:
Scope Modifiers:
Syntax Selectors:
Use the float scope modifier to signify that the query pattern portion of the expression should be evaluated against floating point property types - DzFloatProperty and its descendants.
Scope Selectors:
Scope Modifiers:
Syntax Selectors:
Query Pattern:
# = The floating point value.
Use the int scope modifier to signify that the query pattern portion of the expression should be evaluated against integer property types - DzIntProperty and its descendants.
Scope Selectors:
Scope Modifiers:
Syntax Selectors:
Query Pattern:
# = The integer value.
Use the enum scope modifier to signify that the query pattern portion of the expression should be evaluated against the enumerated property type - DzEnumProperty.
Scope Selectors:
Scope Modifiers:
Syntax Selectors:
Use the bool scope modifier to signify that the query pattern portion of the expression should be evaluated against the boolean property type - DzBoolProperty.
Scope Selectors:
Scope Modifiers:
Syntax Selectors:
Query Pattern:
Use the color scope modifier to signify that the query pattern portion of the expression should be evaluated against a color property type - DzColorProperty and its descendants.
Scope Selectors:
Scope Modifiers:
Float Color properties also support:
Syntax Selectors:
Query Pattern:
Use the string scope modifier to signify that the query pattern portion of the expression should be evaluated against a string property type - DzStringProperty and its descendants.
Scope Selectors:
Scope Modifiers:
Syntax Selectors:
Use the file scope modifier to signify that the query pattern portion of the expression should be evaluated against a file property type - DzFileProperty.
Scope Selectors:
Scope Modifiers:
Syntax Selectors:
Use the image scope modifier to signify that the query pattern portion of the expression should be evaluated against a image property type - DzImageProperty.
Scope Selectors:
Scope Modifiers:
Syntax Selectors:
Use the mappable scope modifier to signify that the query pattern portion of the expression should be evaluated against whether a numeric property is mappable - descendants of DzNumericProperty.
Modifies:
Scope Modifiers:
Syntax Selectors:
Query Pattern:
Use the mustmap scope modifier to signify that the query pattern portion of the expression should be evaluated against whether a numeric property is invalid without a map - descendants of DzNumericProperty.
Modifies:
Scope Modifiers:
Syntax Selectors:
Query Pattern:
Use the mapped scope modifier to signify that the query pattern portion of the expression should be evaluated against whether a numeric property is mapped - descendants of DzNumericProperty.
Modifies:
Scope Modifiers:
Syntax Selectors:
Query Pattern:
Use the map scope modifier to signify that the query pattern portion of the expression should be evaluated against the map path of numeric properties that are Mappable - descendants of DzNumericProperty.
Modifies:
Scope Modifiers:
Syntax Selectors:
Use the clamp scope modifier to signify that the query pattern portion of the expression should be evaluated against whether limits on a numeric property are enabled - descendants of DzNumericProperty.
Modifies:
Scope Modifiers:
Syntax Selectors:
Query Pattern:
Use the min scope modifier to signify that the query pattern portion of the expression should be evaluated against the minimum value for a numeric property - specific descendants of DzFloatProperty and DzIntProperty.
Modifies:
Scope Modifiers:
Syntax Selectors:
Query Pattern:
# = The numeric value.
Use the max scope modifier to signify that the query pattern portion of the expression should be evaluated against the maximum value for a numeric property - specific descendants of DzFloatProperty and DzIntProperty.
Modifies:
Scope Modifiers:
Syntax Selectors:
Query Pattern:
# = The numeric value.
Use the default scope modifier to signify that the query pattern portion of the expression should be evaluated against the default value for a property - descendants of DzFloatProperty, DzIntProperty, DzNodeProperty and DzStringProperty.
Modifies:
Scope Modifiers:
Syntax Selectors:
Query Pattern:
Use the raw scope modifier to signify that the query pattern portion of the expression should be evaluated against the raw value for a numeric property - descendants of DzFloatProperty and DzIntProperty.
Modifies:
Scope Modifiers:
Syntax Selectors:
Query Pattern:
# = The numeric value.
Use the type scope modifier to signify that the query pattern portion of the expression should be evaluated against the DzPresentation type
for a property.
Scope Selectors:
Scope Modifiers:
Syntax Selectors:
Use the lbl scope modifier to signify that the query pattern portion of the expression should be evaluated against the DzPresentation label
for a property.
Scope Selectors:
Scope Modifiers:
Syntax Selectors:
Use the desc scope modifier to signify that the query pattern portion of the expression should be evaluated against the DzPresentation description
for a property.
Scope Selectors:
Scope Modifiers:
Syntax Selectors:
Use the icon scope modifier to signify that the query pattern portion of the expression should be evaluated against a DzPresentation icon for a property.
Scope Selectors:
Scope Modifiers:
A scope modifier must be specified.
Use the small scope modifier to signify that the query pattern portion of the expression should be evaluated against DzPresentation iconSmall
for a property.
Modifies:
Scope Modifiers:
Syntax Selectors:
Use the large scope modifier to signify that the query pattern portion of the expression should be evaluated against DzPresentation iconLarge
for a property.
Modifiers:
Scope Modifiers:
Syntax Selectors:
Use the color scope modifier to signify that the query pattern portion of the expression should be evaluated against a DzPresentation color for a property.
Scope Selectors:
Scope Modifiers:
A scope modifier must be specified.
Use the a scope modifier to signify that the query pattern portion of the expression should be evaluated against DzPresentation colorA
for a property.
Modifies:
Scope Modifiers:
Use the b scope modifier to signify that the query pattern portion of the expression should be evaluated against DzPresentation colorB
for a property.
Modifies:
Scope Modifiers:
Use the base scope modifier to signify that the query pattern portion of the expression should be evaluated against a DzPresentation base for a property.
Scope Selectors:
Scope Modifiers:
A scope modifier must be specified.
Use the auto scope modifier to signify that the query pattern portion of the expression should be evaluated against DzPresentation autoFitBase
for a property.
Modifies:
Scope Modifiers:
Syntax Selectors:
Use the pref scope modifier to signify that the query pattern portion of the expression should be evaluated against DzPresentation preferredBase
for a property.
Modifies:
Scope Modifiers:
Syntax Selectors:
Use the ext scope modifier to signify that the query pattern portion of the expression should be evaluated against DzPresentation extendedBases
for a property.
Modifies:
Scope Modifiers:
Syntax Selectors:
Use the r scope modifier to signify that the query pattern portion of the expression should be evaluated against the red channel value for a color - descendants of DzColorProperty as well as DzPresentation colorA
and colorB
properties.
Scope Modifiers:
Syntax Selectors:
Query Pattern:
# = The numeric value.
Use the g scope modifier to signify that the query pattern portion of the expression should be evaluated against the green channel value for a color - descendants of DzColorProperty as well as DzPresentation colorA
and colorB
properties.
Scope Modifiers:
Syntax Selectors:
Query Pattern:
# = The numeric value.
Use the b scope modifier to signify that the query pattern portion of the expression should be evaluated against the blue channel value for a color - descendants of DzColorProperty as well as DzPresentation colorA
and colorB
properties.
Scope Modifiers:
Syntax Selectors:
Query Pattern:
# = The numeric value.
Use the h scope modifier to signify that the query pattern portion of the expression should be evaluated against the hue for a color - descendants of DzColorProperty as well as DzPresentation colorA
and colorB
properties.
Scope Modifiers:
Syntax Selectors:
Query Pattern:
# = The numeric value.
Use the s scope modifier to signify that the query pattern portion of the expression should be evaluated against the saturation for a color - descendants of DzColorProperty as well as DzPresentation colorA
and colorB
properties.
Scope Modifiers:
Syntax Selectors:
Query Pattern:
# = The numeric value.
Use the v scope modifier to signify that the query pattern portion of the expression should be evaluated against the value for a color - descendants of DzColorProperty as well as DzPresentation colorA
and colorB
properties.
Scope Modifiers:
Syntax Selectors:
Query Pattern:
# = The numeric value.
Syntax selectors tell the application which Syntax Interpreter to use. If declared explicitly, syntax selectors are always declared immediately following any Scope Modifiers or in the event that no scope modifiers are declared, immediately following a Scope Selector. If neither are declared, a syntax selector can be declared at the beginning of the expression.
Use the wc syntax selector to signify that the query pattern portion of the expression should be interpreted as Wildcard syntax. In the Wildcard syntax, all characters represent themselves except for those that are specified below.
Syntax Modifiers:
Use the rx syntax selector to signify that the query pattern portion of the expression should be interpreted as Regular Expression syntax; a rich Perl-like pattern matching syntax with greedy quantifiers. See www.regular-expressions.info for more information on regular expression.
Syntax Modifiers:
By default, regular expressions are case sensitive. Use the ci syntax modifier to signify that the regular expression should be evaluated as being case insensitive; that is, where both uppercase and lowercase characters should be matched regardless of the case used in the expression.
The query pattern represents the value or expression to match.