The AssetsByAssetId Object is formally defined in Table 12. All AliasNames organized by this category shall be assets having a 2:AssetId (see section 7). The string part of the AliasName shall be identical to the value of the 2:AssetId, if the value of 2:AssetId is not an empty or null String. The namespace of the AliasName shall be the one defined by this specification in section 16.

As the default value of the 2:AssetId is an empty String, in a system where the 2:AssetId is not configured, many assets will have the identical 2:AssetId (empty String). In this case, each individual asset should have its own AliasName Object and all of those assets should not use the same AliasName Object. Same assets shall be, in this case, identified by the 2:ProductInstanceUri. In this case, the string part of the AliasName shall be “NoAssetIdAssigned” and the namespace of the AliasName shall be the one defined by this specification in section 16.

Note: Ideally, 2:AssetIds should be unique and two assets with different 2:ProductInstanceUris should have different 2:AssetIds. Also, if an asset is represented by more than one asset Node, meaning several asset Nodes have the same 2:ProductInstanceUri, the same 2:AssetId should be used. As the 2:AssetId is set by the user, this might not be the case. Assigning AliasNames in the context of this Object is done by 2:AssetId. The 2:ProductInstanceUri should only be considered when the 2:AssetId is empty (default value). Therefore, browsing and filtering is also done based on the 2:AssetId, not the 2:ProductInstanceUri.

Table 14 – AssetsByAssetId Definition

Attribute

Value

BrowseName

AssetsByAssetId

Description

Entry point to discover assets by AssetId

References

NodeClass

BrowseName

DataType

TypeDefinition

OrganizedBy by the Assets Object defined in 8.2.1

0:HasTypeDefinition

ObjectType

0:AliasNameCategoryType

Defined in OPC 10000-17

0:HasProperty

Variable

0:NodeVersion

0:String

PropertyType

Conformance Units

AMB Asset Discovery by AssetId