Validating
A validation defines what must be true for each object returned by the filter.
Validations do not select data — that is the filter's job. Validations only judge: pass or fail.
When a validation fails, DAQS reports an error to the user in the Revit plugin. The error message is constructed from the filter output and displayed directly in the plugin interface.
What you will learn
By the end of this chapter, you will be able to:
- Select the correct validator type for a given requirement
- Understand the difference between single and collection validations
- Use the
valueToValidatequery to point at the right field in filter output - Validate strings, numbers, booleans, lists, and property existence
- Combine two related values in a single validation
- Understand how validator types map to the DAQS UI
How this chapter is structured
Overview
An introduction to all available validator categories and how they relate to filter output.
Validations Drive Filter Design
Why you should design your filter with the validation in mind — not the other way around. The validator you need determines what the filter must return.
Validation Awareness Checklist
A practical checklist to run before publishing a rule: does your filter actually expose what the validator needs?
Single Validation
A rule with one validation: one field, one check, one error per failing element.
Collection Validation
A rule that validates multiple elements as a group. Used when the issue cannot be reported per element but must be summarised.
Two Values That Belong Together
How to validate that two related fields are consistent with each other — for example, that a classification code matches the element's category.
Validator Types (UI)
A reference for each validator type available in the DAQS rule editor:
- Validation Name — how to write a clear, actionable name
- Value to Validate — how to point the validator at the right field
- Boolean — true/false checks
- Float — decimal number comparisons
- Integer — whole number comparisons
- List — allowed value lists and word matching
- Null — existence checks (should be null / should not be null)
- Property — structural checks (property should exist / should not exist)
- String — text comparisons, pattern matching, and emptiness checks
Prerequisites
Complete Filters first. Validators depend entirely on the structure of the filter output. If the filter is wrong, the validator will produce misleading results.
Where to go next
Once you understand filters and validators, you are ready to compose complete rules: