The functional model is required to be able to be applied to existing Information Models. These models have defined their own Object Models and their own hierarchy of Objects. OPC UA does not support multiple inheritance. By defining the IF unctionalEntityType Interface, the OPC UA FX Information Model can be applied to any existing Object, adding the required IF unctionalEntityType items into the existing Information Model.

The IFunctionalEntityType Interface is formally defined in Table 100.

Table 100 – IFunctionalEntityType interface definition

Attribute

Value

BrowseName

3:IFunctionalEntityType

IsAbstract

True

References

NodeClass

BrowseName

DataType

TypeDefinition

Other

Subtype of the 0:BaseInterfaceType defined in OPC 10000-5

0:HasProperty

Variable

3:AuthorUri

0:UriString

0:PropertyType

O

0:HasProperty

Variable

3:AuthorAssignedIdentifier

0:String

0:PropertyType

O

0:HasProperty

Variable

3:AuthorAssignedVersion

3:FxVersion

0:PropertyType

O

0:HasProperty

Variable

3:ApplicationIdentifier

3:ApplicationIdentifierDataType[]

0:PropertyType

O

0:HasComponent

Method

3:Verify

Defined in 6.4.3

O

0:HasComponent

Object

3:InputData

3:InputsFolderType

O

0:HasComponent

Object

3:OutputData

3:OutputsFolderType

O

0:HasComponent

Object

3:ConfigurationData

3:ConfigurationDataFolderType

O

0:HasComponent

Object

3:Capabilities

3:FunctionalEntityCapabilitiesType

O

0:HasComponent

Object

3:PublisherCapabilities

3:PublisherCapabilitiesType

O

0:HasComponent

Object

3:SubscriberCapabilities

3:SubscriberCapabilitiesType

O

0:HasComponent

Object

3:ConnectionEndpoints

3:ConnectionEndpointsFolderType

O

0:HasComponent

Object

3:ControlGroups

3:ControlGroupsFolderType

O

0:HasComponent

Variable

3:OperationalHealth

3:OperationalHealthOptionSet

0:BaseDataVariableType

O, RO

0:HasComponent

Object

3:OperationalHealthAlarms

0:FolderType

O

ConformanceUnits

UAFX FunctionalEntity Base

The definitions of all Properties, Variables and Objects that are used in this Interface are provided in 6.4.2. Examples of how this interface could be used are provided in Annex B.