Subclause 9.2 defines a generic pattern to expose and configure components. It defines the following principles:

  • A configurable Object shall contain a folder called SupportedTypes that references the list of Types available for configuring components using Organizes References. Sub-folders can be used for further structuring of the set. The names of these sub-folders are vendor specific.
  • The configured instances shall be components of the configurable Object.

Figure 36 illustrates these principles.

image039.png

Figure 36 – Configurable component pattern

In some cases the SupportedTypes folder on the instance may be different to the one on the Type and may contain only a subset. It may be for example that only one instance of each Type can be configured. In this case the list of supported Types will shrink with each configured component.

This ObjectType implements the configurable component pattern and is used when an Object or an instance declaration needs nothing but configuration capability. Figure 37 illustrates the ConfigurableObjectType. It is formally defined in Table 65. Concrete examples are in Clauses 9.3 and 9.4.

image040.png

Figure 37 – ConfigurableObjectType

Table 65 – ConfigurableObjectType definition

Attribute

Value

BrowseName

ConfigurableObjectType

IsAbstract

False

References

NodeClass

BrowseName

DataType

TypeDefinition

ModellingRule

Subtype of the BaseObjectType defined in OPC 10000-5

HasComponent

Object

SupportedTypes

FolderType

Mandatory

HasComponent

Object

<ObjectIdentifier>

BaseObjectType

OptionalPlaceholder

The SupportedTypes folder is used to maintain the set of (subtypes of) BaseObjectTypes that can be instantiated in this configurable Object (the course of action to instantiate components is outside the scope of this specification).

The configured instances shall be components of the ConfigurableObject.