Download mvdXML Addon
With the mvdXML add-on you can create Simplebim templates from mvdXML files. This supports the vendor neutral OpenBIM workflow for validating IFC models against Exchange Requirements (ER) defined within the Model View Definition (MVD) framework. This add-on was developed in co-operation with Statsbygg. Please be sure to read the documentation below before installing and using this add-on, especially the section about known limitations.
mvdXML add-on for Simplebim 10
Version 21.4.2023 / Requires Simplebim 10.0
mvdXML add-on for Simplebim 9
Version 12.7.2021 / Requires Simplebim 9.0
Current version and history
The most current version is 10.0 for Simplebim 10. This version was published 21.4.2023
What’s new in 10.0
- Same functionality updated to Simplebim version 10
What’s new in 9.0
- Same functionality updated to Simplebim version 9
- Support added for validating assignment to system and electrical circuit
- Logic for resolving predefined type improved to support also user defined types. The new logic is as follows:
- “Object Type” property of the instance, which is the property for user defined types.
- “Predefined Type” of the instance, treating the values NOTDEFINED and USERDEFINED as empty values.
- “Predefined Type” of the type, treating the values NOTDEFINED and USERDEFINED as empty values.
- Generating the Simplebim template divided into 2 parts: groups and validation. The Groups template creates the object groups used in the validation into the model. This is done because the groups should be checked first, before performing any validation inside the groups. For example if we had validation rules for external walls, we first have to make sure we have identified the external walls correctly before applying such validation. The Validation template validates the groups. If a validation rule is applied to a whole object class, then a group with all objects in an object class is created for validation purposes.
- NOSSB property sets added to the standard template and the NOSSB Pset prefix added by default
- Option for defining custom template file added. A custom template is useful for specifying the data types for custom property set properties.
- Support for Predefined Type validation added. A new property ‘Predefined Type Resolved’ is added and gets its value from either the predefined type of the type object or the instance object. Precedence is given to the instance object.
- Nothing really, just upgraded to be compatible with Simplebim 8.0 and upgraded the template to version 8.
- Nothing really, just upgraded to be compatible with Simplebim 7.1.
- Support for IFC superclasses added. It is now possible to set requirements to e.g. IfcElement and those requirements apply to all non-abstract subclasses of IfcElement
- Bug fixed in setting requirements for standard and elemented cases, e.g. IfcWallStandardCase
MVDs (Model View Definitions) are used for defining subsets of models that are relevant to a specific use case. They define the scope of the model subset and rules for the data and data structures within that subset. The goal is, that a model which is compliant with an MVD can be successfully used for an intended purpose. If this as a Simplebim user sounds familiar to you, it is because this is what Simplebim does. In fact the roots of Simplebim are in MVD and the creators of Simplebim were also the driving force behind the original version of MVD. You can read more about the current status of MVD on the BuildingSmart web site.
MvdXML is the machine readable representation of MVD. The idea is that software vendors can implement support for mvdXML and use this mechanism for creating IFC import and export filters, as well as for setting validation rules. You can read more about mvdXML on the official BuildingSmart mvdXML site.
The mvdXML add-on for Simplebim was developed in co-operation with Statsbygg and it is only tested to work with mvdXML files created by Statsbygg. MvdXML is a very flexible format and its implementations in software are still in their early stages. Once the implementations stabilize we will try to support mvdXML In a more generic way. Until then you can try this add-on and provide us feedback at firstname.lastname@example.org.
The basic work flow of this add-on involves 5 steps
- Load a mvdXML file
MvdXML files are XML files that follow the schema defined by BuildingSmart.
- Select Model View (MVD)
One mvdXML file may contain several MVDs and if this is the case, you must choose which of the MVDs you want to use
- Select Exchange Requirement (ER)
Each MVD can contain several ERs and if this is the case, you must choose which of the ERs you want to use
- Generate Simplebim template
Once you have chosen the MVD and ER you can generate a Simplebim template that corresponds to the chosen ER. Before you generate the template, please also read about the settings that control the generation of the template. Once you have generated the template your can preview it inside Simplebim and even make adjustments if needed. For example on the Settings worksheet you might want to add the Author and edit the automatically generated Name, Key, Group and Version information.
- Apply / Save the Simplebim template
Finally you can apply the template to the currently open model or save it as a Simplebim template file for future use. This allows MVD based requirements to be distributed either as mvdXML files, in which case the Simplebim user must have the mvdXML add-on installed, or as Simplebim templates in which case the add-on does not have to be installed and also the more advanced validation features of Simplebim can be used.
The settings are saved in the user’s profile, which means that the settings are remembered between sessions.
|Add Missing Properties||ERs often use PropertySets and QuantitySets that may not exist in the model that is being validated. By adding any missing properties into the model such omissions can be nicely shown in the validation results. This also allows you to edit the properties in Simplebim for correcting issue. Often for example data can be found in the model, but it is not located in the required property. In this case you can simply move the data with Simplebim from its current location into the required property.|
|Trim Model||The ER defines which objects and properties are needed in a exchange. If the ER is defined correctly anything else is not needed. By trimming the model you remove all unnecessary objects and properties from the model, which makes the model and the validation results much easier to read.|
|Create Validation Rules||Validation rules define which objects and properties must be found in the model and can set rules for the allowed values of properties. Sometimes validation rules don’t apply to all objects of an object class, for example not to all walls, but just exterior walls. In such cases a group is created for ‘exterior walls’ and the validation rules are applied only to objects in that group.|
|Property Set Prefixes||We don’t currently have way to know from the data in a mvdXML file if a property is a Property Set or Quantity Set property. The prefix used in the IFC documentation for Property Sets is ‘Pset_’ and for Quantity Sets is ‘Qto_’. With this setting you can define your own (comma separated) list of prefixes such that the Simplebim template can be created correctly. For example ‘Pset_,MyPrefix_’|
|Quantity Set Prefixes||Just like ‘Property Set Prefixes’ but for Quantity Sets.|
The mvdXML add-on installs a new mvdXML workspace that you can use for generating Simplebim templates from mvdXML files. The process of using this workspace is as follows.
- Start Simplebim
- Import the IFC model you wish to validate. If you are not validating any specific model, but are just generating mvdXML based templates, you can import any (small) model
- On the Ribbon Home tab open the Other Workspaces dropdown list
- At the bottom of the list you find a “Add-on Workspaces” section and from there select the “mvdXML” workspace
- The mvdXML workspace has a 3D palette on the top and below it a mvdXML palette. The mvdXML palette has two tabs, one for generating templates and another for previewing templates. The settings are found on the Generate tab. On the right side of the workspace you find the familiar Objects and Properties palettes that show the validation results once you have applied a generated template.
- For generating the mvdXML based templates please follow the steps documented above in the ‘Functionality of the add-on’ section and also read the ‘Settings’ section above.
- Preview the result and apply or save the template. You can generate several templates in one session by loading another mvdXML file or selecting another ER and then generating the template again.
The data in mvdXML files does not tell the required data type for properties, like string, boolean, integer, length measure etc. But this information is needed for validation because the data type is important for the system that imports the IFC models. When the mvdXML add-on is installed it installs the file mvdXML Template.xlsx into the Modules sub-folder of the Simplebim installation folder, which by default is C:\Program Files\Datacubist\Simplebim 7.This is an empty Simplebim template file with one additional worksheet called mvdXML. Please note that you need administrator rights for editing this file. On this worksheet there is a list of all Property Sets and Quantity Sets defined in the IFC4 documentation. You can add your own properties to this list following the same pattern as used for the IFC properties. This list also contains the data type (property type) and it overrides all other property recognition methods that may be used by the add-on. If you make any changes to this file, please be sure to save a copy in another location because this file will be overwritten when you install a new version of the mvdXML add-on.
The current version of the mvdXML add-on has the following limitations
- MvdXML is based on so called Concept Templates that define how a certain piece of data must be represented in IFC. Instead of a generic implementation that could handle any Concept Template this add-on supports a set of hard coded Concept Templates. Each Concept Template has a unique “uuid” that could be used for identifying the Concept Template. Once these UUIDs stabilize we can start supporting them in a more generic way that today. For example when we have a Concept Template that defines how Property Set properties are defined we could support that Concept Template, provided that everybody is using the same Concept Template with the same UUID.
- The data type of Property Set and Quantity Set properties is not defined in the mvdXML files and the data type String is assumed for all properties that are not found in the IFC documentation. Please read the instructions in the Advanced Techniques section for how to force the data type of non-standard properties.
- The measure value types that are supported are limited to the ones supported by Simplebim, which is a subset of all possible measure value types defined in IFC
- Opening elements are not supported
- All properties are validated on the object instance level, not on the type object level. Also the pattern ‘instance properties override type properties’ is not yet supported.
- Validation for classifications using the dedicated classification data structures in IFC are not supported. These could be validated in Simplebim but we do not support any Concept Template for this.
- The Name of groups (such as systems and zones) can’t be validated yet. This is because the Name is mapped to the name of a group in Simplebim, which is a special property and can’t be validated at the moment.
- Validating against lists of allowed values or naming patterns (Regex) is not supported yet. These are supported in Simplebim validation but the agreements how to do this in mvdXML have not stabilized yet.