Objects are used to represent systems, system components, real-world objects and software objects. Objects are defined using the Object NodeClass, specified in Table 11.
Table 11 – Object NodeClass
|Base NodeClass Attributes||M||--||Inherited from the Base NodeClass. See 5.2.|
|EventNotifier||M||EventNotifierType||The EventNotifier Attribute is used to indicate if the Node can be used to subscribe to Events or the read / write historic Events.The EventNotifierType is defined in 8.59.|
|HasComponent||0..*||HasComponent References identify the DataVariables, the Methods and Objects contained in the Object.|
|HasProperty||0..*||HasProperty References identify the Properties of the Object.|
|HasModellingRule||0..1||Objects can point to at most one ModellingRule Object using a HasModellingRule Reference (see 6.4.4 for details on ModellingRules).|
|HasTypeDefinition||1||The HasTypeDefinition Reference points to the type definition of the Object. Each Object shall have exactly one type definition and therefore be the SourceNode of exactly one HasTypeDefinition Reference pointing to an ObjectType. See 4.5 for a description of type definitions.|
|HasEventSource||0..*||The HasEventSource Reference points to event sources of the Object. References of this type can only be used for Objects having their “SubscribeToEvents” bit set in the EventNotifier Attribute. See 7.17 for details.|
|HasNotifier||0..*||The HasNotifier Reference points to notifiers of the Object. References of this type can only be used for Objects having their “SubscribeToEvents” bit set in the EventNotifier Attribute. See 7.18 for details.|
|Organizes||0..*||This Reference should be used only for Objects of the ObjectType FolderType (see 5.5.3).|
|<other References>||0..*||Objects may contain other References.|
|NodeVersion||O||String||The NodeVersion Property is used to indicate the version of a Node.The NodeVersion Property is updated each time a Reference is added or deleted to the Node the Property belongs to. Attribute value changes do not cause the NodeVersion to change. Clients may read the NodeVersion Property or subscribe to it to determine when the structure of a Node has changed.|
|Icon||O||Image||The Icon Property provides an image that can be used by Clients when displaying the Node. It is expected that the Icon Property contains a relatively small image.|
The Object NodeClass inherits the base Attributes from the Base NodeClass defined in 5.2.
The mandatory EventNotifier Attribute identifies whether the Object can be used to subscribe to Events or to read and write the history of the Events.
The Object NodeClass uses the HasComponent Reference to define the DataVariables, Objects and Methods of an Object.
It uses the HasProperty Reference to define the Properties of an Object. The Property NodeVersion is used to indicate the version of the Object. The Property Icon provides an icon of the Object. There are no additional Properties defined for Objects in this document. Additional parts of this series of standards may define additional Properties for Objects.
To specify its ModellingRule, an Object can use at most one HasModellingRule Reference pointing to a ModellingRule Object. ModellingRules are defined in 6.4.4.
The HasTypeDefinition Reference points to the ObjectType used as type definition of the Object.
Objects may use any additional References to define relationships to other Nodes. No restrictions are placed on the types of References used or on the NodeClasses of the Nodes that may be referenced. However, restrictions may be defined by the ReferenceType excluding its use for Objects. Standard ReferenceTypes are described in Clause 7.
If the Object is used as an InstanceDeclaration (see 4.5) then all Nodes referenced with forward hierarchical References direction shall have unique BrowseNames in the context of this Object.
If the Object is created based on an InstanceDeclaration then it shall have the same BrowseName as its InstanceDeclaration.