In software development interesting things can happen when you interact with outside sources; Autodesk Revit is no exception. Our senior software developer Ben Bishoff recently spent some time investigating one example involving Microsoft Windows and the Revit Family file. Revit has rules about the naming of families that is enforced when you are working with the software, either as a user or as an add-on software. In particular, it does not allow the following characters to be included in the name: \ : { } [ ] | ; < > ? ' ¶ and unprintable characters (ASCII 0 - 31) For example, while in a Revit project file, if you use the "Rename½" option from the family right-click menu within the Project Browser, and to rename 'Door Tag' to 'Door Tag [New]' you would receive an error.
This is simple enough, but the situation is compounded when Revit uses the file name of a family as the name of the family in the project. Windows, like Revit, also has characters that is doesn't allow in file names, but these characters are not the same ones that Revit excludes. \ / : * ? " < > | As a result there is a small set of characters that, while not valid characters in Revit, can still end up in family names if they are part of the file name. { } [ ] ; ' ¶ To continue the previous example, if you create a new Revit family from the Family Editor, you can save that file with the name 'Door Tag [New].rfa'. When that file is loaded into Revit there will be a family name that Revit would not otherwise permit to occur.
This doesn't appear to cause any problems in Revit itself, yet these characters were declared invalid for a reason, even if we do not know what that reason is. Is the use of an invalid characters worth the risk? We strive to avoid anything that would destabilize our customer's file. That is why have taken the time to understand this situation and verify that Ideate BIMLink interacts correctly with these illegally named families. Not only does Ideate BIMLink handle these families carefully you can use it to ensure that none of your family names contain theses illegal characters. We recommend using our 'Project_Stds-Rename_Types' sample link file which will allow you to rename all of the family names and type names within one file.
Project Naming Standards in Revit
If you have a lot of family types in your project you can make it even easier to find these problem families by adding a filter to the link that identifies family or type names that contains an invalid character. In this example we are identifying ones that use a bracket character:
To try it for yourself download the trial version of Ideate BIMLink.
About the Author
Jesika DiGregorio - Software Team Lead Jesika received her Bachelor of Architecture from the University of Oregon in Eugene where she also spent time studying advanced math. Her work experience includes Junior Designer at an award-winning firm specializing in architecture and land planning, and Intern Architect at a firm that provides services in planning, design, construction documents and construction administration for projects of all sizes. After working in architecture design for several years, Jesika decided to pursue her interest in programming and her love of efficient systems. She now serves as a Software Team Lead for Ideate Software.