In this thread, we will inform you of planned and recently released features of the bSI Validation Service. We will cover new platform features as well as new rules implemented.
We will be editing this post to update on major releases and minor fixings.
We will not use this post to deal with feature/rule requests or generic questions regarding the Validation Service or Software Certification. For these and other topics unrelated to the update of the Validation Service, please start a new topic. We reserve the right to move off-topic posts to new threads.
If you want to stay updated, turn on notifications for that topic.
Faster and more reliable platform infrastructure
Migrated the platform from Flask + RQ + Redis + PostgreSQL to Django + Celery + Redis + PostgreSQL, resulting in increased resilience, improved performance and better scaling options. It builds upon a strong foundation with a âbatteries includedâ philosophy to quickly deliver new functionality - for example API services, background tasks, reporting and administration.
Prerequisite check on official IFC versions
Gateway check to ensure the uploaded IFC files use one of the official IFC versions, preventing further validations in case they are not.
New rules
Benefit from 17 new validation rules, including 12 focusing specifically on IfcAlignment and 1 rule on industry practices. All rules, other than syntax and schema checks, are available here.
Easier rule authoring for developers
Simplified rule authoring processes make it easier to customize and create rules tailored to specific requirements.
Checks of Industry Practices
Introduced industry best practices checks that provide warnings (not errors) on common practices and sensible defaults. See Industry Practices.
Introduce validation outcome codes
Validation outcomes (pass, error, warning) are now categorized and assigned to outcome codes. This allows for improved overall metrics for the IFC files being validated.
Introduce âNot-Applicableâ status for rules and bSDD
Previously, there wasnât a distinction between rules passing on instances from the model versus rules not failing because the relevant data was not present in the model (or schema). For example, a rule that checks the segments of an alignment, is never relevant to an IFC2X3 model, and only relevant to an IFC4.3 model, when the model contains IfcAlignment entities. This distinction is now visible in the reports.
Basic documentation
All README files and other documentation from the code repositories
have been combined into a single location and can now be viewed at buildingsmart.github.io/validate. Any corrections or suggestions can be proposed via pull request to the /docs folder in the gh-pages branch of the validate repository.
IMPORTANT
While this upgrade is aimed at improving performance, scalability, and reliability, the migration to a new infrastructure and to a different data model comes with a necessary change: all current validation reports will be deleted with the release of the new version.
We encourage you to take advantage of these enhancements by validating your files again to be checked against the updated rule set. By doing so, youâll ensure that you receive the most up-to-date and complete validation reports.
Activation Checks are used to verify the presence of specific IFC entities. These rules never return an error, and are used mainly to derive metrics from files.
IBP001 - Stair decomposition renamed to BLT003 - Stair decomposition
Platform update:
Feedback panel added (try it out!)
bSDD compliance check temporarily disabled
update to IfcOpenShell v.0.8.0.
ATTENTION: the last platform update fixes an issue with schema validation. You may get more schema errors reported if you check again a file with this new release.
Activation rules are used to verify the presence of specific IFC entities. These rules never return an error, and are used mainly to extract metrics from files.
1 new Industry Best Practice checks:
ALB010 - Alignment without referents
4 new Normative IFC Rules:
BLT002 - Correct use of partitioning type attributes for windows
PJS003 - Valid Globally Unique Identifiers
BRP001 - Polyhedral IfcFace boundary no self-intersections
TAS001 - Polygonal face boundary no self-intersections
6 rule fixes:
IFC102 - Absence of deprecated entities
ALA001, 002 and 003 renamed to ALB021, 022, 023
GEM052 â Corrected the wording of the report when warnings are raised
ALS016 â Additional information included in error report to assist implementers with debugging
Activation rules are used to verify the presence of specific IFC entities. These rules never return an error, and are used mainly to extract metrics from files.