What is Validation?
Validation in Speckle checks model data against rules you define. Unlike geometry-based clash detection, validation focuses on:- Property validation - Check if properties exist, have values, or match patterns
- Data quality - Ensure data meets project standards and requirements
- Automated testing - Run checks automatically when models are published
- View results - See validation results in the 3D viewer
Validation Options
There are three ways to validate models in Speckle:- Property Checker
- Model Validation
- Automated Validation
The Property Checker is an Intelligence widget that provides spot checking of one property at a time:
- Create validation rules directly in the dashboard widget
- View results in a donut chart with pass/fail percentages
- Colorize the 3D viewer based on validation results
- Quick setup for immediate visual feedback
- Validates against dashboard data sources
Key Concepts
Rulesets
A ruleset is a collection of validation rules for a specific project. You can create multiple rulesets for different validation purposes (e.g., one for building code compliance, another for naming conventions). Rulesets can be exported and imported as TSV files, making it easy to share validation rules between projects or teams.Rules
Each rule consists of one or more conditions that work together to validate model elements. Rules use a structured logic system withWHERE, AND, and CHECK conditions.
Conditions
Conditions define what to check:- Logic: How conditions combine (
WHEREto filter,ANDto refine,CHECKto validate) - Property Name: The object property to check
- Predicate: The comparison operation (equal to, greater than, exists, etc.)
- Value: The reference value for comparison
- Severity:
ERROR,WARNING, orINFO - Message: Description shown in validation results (auto-generated to help validate the logic, but can be overwritten)
FAQ
What types of rules can I create?
What types of rules can I create?
You can create rules that check for property existence, pattern matching, numeric comparisons, and value validation. Rules are defined using the validation rules interface at model-checker.speckle.systems.
Do I need to run Automated Validation manually?
Do I need to run Automated Validation manually?
No, Automated Validation runs automatically as an automation when you publish models to Speckle. Once set up, it will check every new version against your rules.
What happens if a rule fails?
What happens if a rule fails?
Elements that fail validation rules are flagged in the 3D viewer with warnings or errors. You can see which rules failed and the associated messages.
Can I check properties that don't exist in the model?
Can I check properties that don't exist in the model?
Yes, Automated Validation can add tests for properties. The results of these tests can then be used as filters in the 3D viewer, even if the property doesn’t exist in the original model.
Can I have multiple rulesets for one project?
Can I have multiple rulesets for one project?
Yes, you can create multiple rulesets for a single project. This is useful for organizing different types of validation checks (e.g., building code compliance, naming conventions, material standards).
How do rule messages work?
How do rule messages work?
Rule messages are auto-generated to help validate the logic you are testing for, but they can be overwritten with custom messages. This helps ensure your validation messages are clear and actionable.
Can I export and import rulesets?
Can I export and import rulesets?
Yes, rulesets can be exported and imported as TSV files. This makes it easy to share validation rules between projects or teams, or to back up your rules.
Does it matter which Speckle project I select?
Does it matter which Speckle project I select?
At this time, there isn’t anything particularly special about selecting a particular Speckle project. We’re considering making use of project data when defining rules in future updates.
What's coming for validation?
What's coming for validation?
Model Validation is now available in Speckle Intelligence dashboards, providing validation at scale using Automated Validation. We are working on support for importing IDS and COBie for the definition of rulesets.