We’ve been getting some questions about the model checking feature of BIMserver. In this post we’ll try to explain some of the capabilities.
Many ask us what standard we use for the model checks. The answer is clear: none. Just like with the query language we couldn’t find a standard that is stable enough to be used in practice. We know there is mvdXML, and you can even argue BimQL is a model checking language. There are many others as well with great intentions. However, after carefully listening to our user’s needs, none of these standards are capable of handling basic model checking requirements our users have. Because we don’t believe in standardization because of standardization we went for a different solution.
The current implementation is a JavaModelChecker. With this capability you can write java code against the BIMserver core and do modelchecking. Results can be ‘pass’, ‘fail’, and ‘list’ (which gives a list of fails). There are examples available on https://github.com/opensourceBIM…javamodelchecker Specifically look at the ‘Window With Checker’ on https://github.com/ope….owWidthChecker.java
Modelcheckers can be used before data is stored in the database as a new revision, or before a trigger is send to a service. In both cases the bimviews GUI can help you with setting up modelchecks.
The implementation has the option to create other modelcheck plugins. This is what Chi Zhang (Eindhoven University of technology) did for mvdXML. His mvdXML plugin is a derivative of the JavaModelChecker. By using this plugin you can use mvdXML files to check the model against.
We’re following the developments of mvdXML, but also the modelcheck capabilities the new ifcOWL (combined with reasoners) can bring to BIM. When stable enough, the development will be tuned.