The MCR model checker is a Python code that would help IDD managers check for the compliance of Revit files against JTC's Model Content Requirement (MCR) requirements. This model checker serves to streamline and optimise the JTC MCR checking process. The code runs on the Revitpythonshell Add-In in Revit.
- Iterate through a list of category codes (E.g. OST_StructuralColumns , OST_Doors)
- Extract a list of RevitElementIDs for given category code
- Filter out the required elements using Type Comments or Family and Type Name (E.g Pumps)
- Extract all parameter names associated with the element
- Extract the correct parameter names required to be checked from Plannerly excel export
- Compare the two lists and return error messages
- Repeat the step for all given category codes
- Generate an error report for all elements and export report into an Excel File
- Check if parameters exist
- Check if parameter names are correct
- Check if parameters are of the correct type
- Check if Family and Type name is correct
- Derivation of MCR code from Family and Type name
- Error report exported as an Excel File
- Currently, the code can only check 6 categories (ProjectInformation, TitleBlocks, Doors, Pump, GeneratingSet, StructuralColumns)
- Unable to check Revit element if both Type Comments (MCR code) and Family and Type name are wrong
- Identification and correction of parameter names will not work with typo errors and partial inputs
- E.g. “OerallHeight” will not be identified as “OverallHeight”
- For inputs requirements which are ‘Any text’ and ‘Any number’
- Check if parameter input is empty
- Check if parameter input is ‘0’, ‘N.A.’ , ‘-’
- A list of category codes to check is still needed (Hardcoded)
- File path finder function still needs to be manually edited when adding more categories to check OR when code is given to another person to test (hardcoded)
- Extension of code to all categories of Revit elements
- Functionality to skip checking files that have already been checked before
- Online database of Plannerly export files or ability to access Plannerly data directly
- File paths do not need to be changed every time a new person wants to use the code
- Designated Pyrevit button that can run the code with a single click
- When Revit files are too big to be uploaded to Plannerly (>300mb)
- Confidential and secret projects that cannot be uploaded to Plannerly and offline checks are required
- Autodesk Revit
- Revitpythonshell Add-in
- Plannerly Excel export files