Unless you’ve been living under a rock for the last few years, you’d be aware that almost globally the British Standards are the benchmark for all things BIM.
The international standard ISO19650 is based on the British BS and PAS1192 documents. Most naming conventions out there are based on BS 8451-1:2012. BS8451-1 covers naming and classification of BIM objects for architectural and engineering and construction. Natspec Open BIM Object Standard (OBOS), ANZRS? Yep you guessed it. They’re based on or derived from BS 8451.
There are two options in the British Standard. Objects that contain classification parameters and objects that don’t. What does this mean for you though? In it’s most basic sense if you drop the required classification information into parameters within the objects themselves, then you can have far simpler object names.
Don’t want to populate classification parameters? Well you’re naming content the long way.
Objects that contain classification attributes
If your object contains classification information within parameters, you don’t need to repeat that information in the family name. Providing data just because technology allows you to isn’t the right way to approach BIM.
BS8451-1 calls for “at least one classification to a UK convention” or “a classification from an equivalent generic classification text” so if you’re using Uniclass, Omniclass, Master Spec, it doesn’t matter as long as it is what your client has requested or you project team has agreed to.
The source or author is the library author, such as a company or the manufacturer themselves. This could be an abbreviated code, or it could be the full name.
It’s also not both the author and the manufacturer, it should be one or the other. It is who created the content. If the manufacturer had their content created by a third party, this is when it should the the manufacturer’s name or abbreviation. And if you’re not sure how to abbreviate your company name, if they’re listed on the stock exchange, that’s a good place to start!
The type is the first level of specialisation. A lot of people in the Revit world make the mistake of this being the Revit family category, which if we come back to the concept of “don’t repeat information just because you can” if you use the category as the type portion of the name, you’d missed an opportunity.
The subtype or product is optional but in my opinion it’s quite useful. It’s used to convey information not captured in attribute data.
An example of an object named in this manner could be my floorwaste gully family. In this instance the name might be:
Or say in the instance of a surface mount troffer lighting fixture, you might name it:
or better yet because our objects are already categorised, we can skip “LightFixture” from the name and run with something like this:
In each instance, the remainder of the classification information and any other required information is contained within the object itself.
Objects that do not contain classification attributes
So this is where the naming can get tricky, and oddly enough much of the content I’ve seen over the years uses this long form of naming or some hybrid of this system to name their content, even if the object contain relevant classification parameters.
There isn’t a problem with this, if you want to use the long form naming convention that’s great, but just remember you want to keep your content and it’s naming simple and easy so your team is more likely to use it.
For these kinds of objects, the standard adds extra information to the front end of the object name.
The role is the role of the object owner on the project based upon the BS1192:2007 requirements for defined roles and responsibilities, for example LB for library provider and MN for manufacturer.
The classification is the coding from the classification system that your client has requested or the project has agreed to. Using my previous content examples
|Classification System||Classification Code|
|Omniclass||23-31 27 00|
|Classification System||Classification Code|
|Omniclass||23-35 47 11 11 11|
BS8541-1 also permits the text description of the classification code to be included and separated by a colon, for example: Pr_70_70_48_85:Surface luminaires
Presentation is optional and describes the level of detail that the object is presented in.
The remainder of the fields remain the same, covering the Source or Author, Type and Subtype or Product.
Using the same families again, using this long form approach the families would be named as follows:
and for the lighting fixture
The ANZRS Method
The ANZRS method to object naming is
It’s arguably more agreeable naming convention as the first portion of the name has no risk of becoming an endless list of redundant company abbreviations that make it impossible to search for object alphabetically.
The FunctionalType portion of the name is the broadest descriptor that can be used. In the example of our floorwaste, that would be FloorWaste. It’ is made very clear in the ANZRS documentation that the functional type or the type have nothing to do with the Revit family category.
The Subtype contains the next logical level of information to descibe the element. In the example of my floor waste, I would want to know what kind of material it is made from, so I would use PVC.
This might vary greatly depending on the type of object and the kind of information you wish to convey.
The Manufacturer is obvious, if the object is intended to be generic, then simply enter Generic.
Descriptor is entirely optional, but it’s where you can provide additional information to help describe the object.
As with other naming conventions there are no allowances for spaces or hyphens. Underscores should be used to separate descriptors and multiple word descriptors should use PascalCase.
Using our same objects as examples again, using ANZRS they would be named as follows:
LightFixture_Troffer_Acme_SurfaceMounted or more in line with the ANZRS descriptors would be:
The Natspec Open BIM Object Standard flips the BS8541-1 naming on it’s head in the same way ANZRS does, but OBOS gets a little more descriptive.
The Type, Subtype and Source are the same as the ANZRS functional type, type and manufacturer.
OBOS then continues to add further descriptors, starting with Product/Range Identifier which is used to identify the manufacturer’s product range or product identifier. This could be a part number.
The Differentiator is to provide additional information as required to describe the object or it’s material.
Finally, the Originator is a 3-6 character code to indicate who has authored the object.
Again taking our same families, they would now be named
Which is right for me?
As I’ll always argue, you need to make it easy for the team working with the content. In my opinion don’t overload the naming convention with coded abbreviations, especially if you’re using teams overseas.
My main two arguments when naming content will always be:
- Don’t prefix your content with your company name or the author name (sorry BS8541, you’re doing it wrong). Not every company has a content management system to make searching easier. If you’re using Revit or file explorer to search for content, drop the author/company descriptor to the back of the filename like they do in ANZRS or OBOS.
- Don’t waste your type or subtype descriptors by using the Revit family category. Use something that actually adds value to your content naming rather than something redundant. Again, it needs to be something that is easy to find without a content management system. Revit already sorts content by family category, adding that family category to the name of the object is a waste.
Another consideration to working with teams overseas and content naming, make sure that you understand some of the nuances in their use of English. For example, the Philippines is Americanised so many of the terms used in Australia or Europe may not be directly understood without explanation.
At the end of the day, it’s whatever works for you and your team. Make sure the naming convention is discussed with all stakeholders, that everyone can come to a compromise for the greater good.
Finally, make sure that it is all adequately documented so that anyone can jump in and understand what is going on.