Tuesday 15 November 2011

Naming Convention for the National BIM Library

This blog post details the initial naming convention that will be used for the library objects for the launch of the National BIM Library. This is not being presented as a standard, this is simply the initial naming convention we have chosen to go for with release one. The National BIM Library will be a maintained library of BIM objects that will grow and develop over time.

1. Introduction
The principle is to provide just enough information to allow the user to find the object they want quickly. It is then the end-users responsibility to configure this object and adopt a project naming convention of their choosing to ensure unique names within a project.

To demonstrate this point, I will put my Software Development hat on and give a Visual Basic example.

Consider an object representing a car:

Class Car
    Public NoOfWheels As Integer
    Public Colour As String
    Public Model As String
    
    Public Property Get DescriptiveName() As String
        DescriptiveName = "Car_" & Model & "_" & Colour & "_" & NoOfWheels
    End Property
End Class

Using this object, good practice may be:

Dim objCarType1 as New Car
objCarType1.NoOfWheels  = 3
MsgBox “The number of wheels the car has is: “ & objCarType1.NoOfWheels

What would be not so good would be:

Dim objRedCar4Wheels as New Car
objRedCar4Wheels.NoOfWheels = 3
MsgBox “The number of wheels the car has is: “ & objRedCar4Wheels.NoOfWheels

Immediately we have a clash between the object name and the parameters within it.

In this example the return from the parameter “DescriptiveName” would give a fuller name that is accurate and constructed through adding specific parameters together.

Moving on to BIM now, for this reason, just enough information is provided in the National BIM Library object names to allow users to find what they require quickly. The reference to parameter values are kept to an absolute minimum to avoid the possibility of conflict.

“Tag” descriptions based on the actual parametric values are encouraged within the proprietary BIM tool and in the context of a project.

2. Library Object Naming Convention
  • Fields to be separated with the “_“ symbol
  • We suggest that Field 02 is the only compulsory field, although National BIM Library objects will have"nbl" for Field 01.
  • Data within fields to be separated with the “-” symbol
Field 01
  • Optional field to indicate the author of the library object.
  • This is chosen as the first field to allow objects from different authors to be grouped when sorted alphabetically.
  • No more than six characters will be used.
Field 02
  • Compulsory field to indicate the system or element
  • The full name or shortened name may be used. Must be camel case for multiple words.
    For example: Door, Wall or AirConUnit.
  • Note that where types of a common parent are used then the parent name may be dropped. So “Ext” may be used for “External Walls” where Wall is clearly the inherited item.
  • The common names used will be provided within supporting documentation.
Field 03
  • Optional field to indicate the supplier name for objects representing proprietary items.
  • The full name or shortened name may be used. Must be camel case for multiple words.
    For example: WidgeLtd.
Field 04
  • Optional field to indicate the supplier’s model code for objects representing proprietary items.
  • The full name or shortened name may be used. Must be camel case for multiple words.
    For example: Widge1000
Field 05
  • Optional field to indicate the content that is within the object.
  • Just enough information should be added here to allow the user to successfully select the library object the user requires.
  • Shortened names should be used.
    For example: ClyBrck-Insul-Blck or Sgl-Pnl-02
  • The common abbreviated names used will be provided within supporting documentation.
Further notes
  • Classification will not be included. This information is best placed within the property sets.
  • Version information must not be included. This information is best placed within the property sets.
  • Field 05 will not attempt to list all of the information within the object as this will lead to conflicting information as the user changes property sets and materials within the context of a project.
Examples
  • nbl_DoorExt_Sgl-Vsn-Pnl-01 for a generic door object
  • nbl_WallExt_Stone-Cavity-Insul-Blck-GypPlstr for a generic wall object
  • nbl_WallExt_Stone-Cavity-Insul-140Blck-GypPlstr for a generic wall object where a similar object with 100mm of block is offered.
  • nbl_Chair_WidgeLtd_Widge1000 for a manufacturer chair object

No comments:

Post a Comment