diff --git a/BDNS_Specification_naming_syntax.md b/BDNS_Specification_naming_syntax.md index 7972114..25b77f6 100644 --- a/BDNS_Specification_naming_syntax.md +++ b/BDNS_Specification_naming_syntax.md @@ -18,12 +18,13 @@ The following definitions apply: * **Device/Asset Role**: a specific function in a building that is fulfilled by a device. A device role remains fixed for the function even if the hardware is replaced. * **Device/Asset Instance**: a specific individual piece of hardware. If the hardware is replaced for a particular device role, the device instance changes. -* **Machine Generated/Readable Device/Asset Instance Globally Unique Identifier (Device/Asset Instance GUID)**: a sequence of digits which is machine generated, is immutable and guaranteed to be globally unique among all identifiers used for the purpose of identification of devices within the digital building system. This type of information can be generated by the manufacturer, BIM or asset management software and is unique to the _device instance_. If a device is replaced, its _Device Instance GUID_ will change. This type of information _is in the scope of this document._ -* **Human Readable Device/Asset Role Name (Device/Asset Role Name)**: an alphanumeric sequence that is selected by a human operator according to a global standard that guarantees correlation to building devices categories and uniqueness within the building for a _device role_. The device role human readable name will remain unchanged when specific hardware fulfilling the role is changed. This type of information _is in the scope of this document._ -* **Physical Label**: a physical piece of material affixed to a building control device including the printed name of the device and additional information in the form of QR code, NFC tag or other data encoding technologies. This type of information _is in the scope of this document._ -* **Network Hostname**: the hostname is a sequence of characters assigned to a device (a host) on a network. A hostname should uniquely identify a single device role on the network at a given point in time. This type of information _is not in the scope of this document._ -* **Control point name**: the name of each attribute of a device, such as a sensor value or a set point value. This type of information _is not in the scope of this document._ -* **Metadata**: data associated with a device that provide information about its attributes. This type of information _is not in the scope of this document._ +* **Machine Generated/Readable Device/Asset Instance Globally Unique Identifier (Device/Asset Instance GUID)**: a sequence of digits which is machine generated, is immutable and guaranteed to be globally unique among all identifiers used for the purpose of identification of devices within the digital building system. This type of information can be generated by the manufacturer, BIM or asset management software and is unique to the _device instance_. If a device is replaced, its _Device Instance GUID_ will change. This type of information _is in the scope of this document. +* **Human Readable Device/Asset Type**: a type of device that has been selected to achieve a specific function. A device type remains fixed (provided direct replacement) if the hardware is replaced. (This is an optional field). +* **Human Readable Device/Asset Role Name (Device/Asset Role Name)**: an alphanumeric sequence that is selected by a human operator according to a global standard that guarantees correlation to building devices categories and uniqueness within the building for a _device role_. The device role human readable name will remain unchanged when specific hardware fulfilling the role is changed. This type of information _is in the scope of this document. +* **Physical Label**: a physical piece of material affixed to a building control device including the printed name of the device and additional information in the form of QR code, NFC tag or other data encoding technologies. This type of information _is in the scope of this document. +* **Network Hostname**: the hostname is a sequence of characters assigned to a device (a host) on a network. A hostname should uniquely identify a single device role on the network at a given point in time. This type of information _is not in the scope of this document. +* **Control point name**: the name of each attribute of a device, such as a sensor value or a set point value. This type of information _is not in the scope of this document. +* **Metadata**: data associated with a device that provide information about its attributes. This type of information _is not in the scope of this document. ## Specification clause example @@ -112,6 +113,63 @@ For BIM workflows, the validation procedure shall include the following tests: `[A-Za-z0-9_$]{22} `([IFC base 64](https://standards.buildingsmart.org/IFC/DEV/IFC4_2/FINAL/HTML/schema/ifcutilityresource/lexical/ifcgloballyuniqueid.htm) format) +### Device/Asset type (asset.type) + +#### Definition + +The device or asset type is a human-generated identifier that is unique for a type of assets to the building. It combines a standard abbreviation for device/asset types and a numerical ID that is unique to each specific device/asset type. + +#### Originator + +Generated by the BIM operator, design team, project team or facilities team, depending on project stage. + +#### Format + +``` + +``` + +where: + +`X `= (alphabetic characters only, variable length, between 2 and 6 characters) + +`Z `= (variable length, optional unique integer numbers by asset type in each building, non zero padded) + +The type abbreviation shall be according to the [Building Device and Asset Abbreviation Registry](https://github.com/theodi/BDNS/blob/master/BDNS_Abbreviations_Register.csv). + +The format is composed of a 2 to 6 uppercase alphabetical characters long type abbreviation according to the name abbreviation (`X`) and a variable length character numeric sequence that is unique to the building (`Z`) for each asset type. No leading zeros are allowed in the asset type incremental number to avoid ambiguity. + +Only uppercase alphabetic characters and numeric characters are allowed, according to the regular expression below. There is no separator character between the type abbreviation and the incremental number for the `asset.type`. + +If there is only one asset type per abbreviation, the asset type incremental number can be omitted. + +#### Examples + +Asset type example for a lighting fixture asset type: `LT3` + +Asset type example for an air handling unit asset type: `AHU10` + +Asset type example for a distribution board asset type: `DB7` + +Asset type example for a lighting fixture asset type when there is only one type: `LT` + +Asset type example for an air handling unit asset type when there is only one type: `AHU` + +Asset type example for a distribution board asset type when there is only one type: `DB` + + +#### Validation tests + +The validation procedure shall include the following tests: + +1. Regular expression matching to validate the name format. +2. Uniqueness of the name across all asset types in the building. + +##### Regular expression matching + +``` +[A-Z]{2,6}(?:[1-9][0-9]*)? +``` ### Device/Asset role name (asset.name) @@ -130,12 +188,22 @@ Generated by the BIM operator, design team, project team or facilities team, dep - ``` +or + +``` +- +``` + where: `X `= (alphabetic characters only, variable length, between 2 and 6 characters) `Y `= (variable length, unique integer numbers by building, non zero padded) +`Z `= (variable length, unique integer numbers by asset type in each building, non zero padded) + +The use of the `Z` field is optional, only in case there is a need to include `asset.type` definitions. + The type abbreviation shall be according to the [Building Device and Asset Abbreviation Registry](https://github.com/theodi/BDNS/blob/master/BDNS_Abbreviations_Register.csv). The format is composed of a 2 to 6 uppercase alphabetical characters long type abbreviation according to the name abbreviation (`X`) and a variable length character numeric sequence that is unique to the building (`Y`). No leading zeros are allowed in the building unique incremental number to avoid ambiguity. @@ -153,6 +221,11 @@ Name example for an air handling unit: `AHU-3` Name example for a distribution board: `DB-2` +Name example for a lighting fixture including an asset type: `LT3-375` + +Name example for an air handling unit including an asset type: `AHU10-46` + +Name example for a distribution board including an asset type: `DB3-21` #### Validation tests @@ -165,10 +238,9 @@ The validation procedure shall include the following tests: ``` -[A-Z]{2,6}-[1-9][0-9]* +[A-Z]{2,6}(?:[1-9][0-9]*)?-[1-9][0-9]* ``` - ## Physical device/asset labels Physical device/asset labels shall contain the following items: diff --git a/BDNS_Specification_naming_syntax.pdf b/BDNS_Specification_naming_syntax.pdf new file mode 100644 index 0000000..5047f45 Binary files /dev/null and b/BDNS_Specification_naming_syntax.pdf differ