リファレンス

Referenceは階層構造をしているNodeの記述要素です。同時にReferenceType Nodeのインスタンスとして公開されます。ReferenceはReferenceType NodeClassにより定義されます。

HierarchicalReferenceとNonHierarchical ReferenceTypeはAbstruct ReferenceTypeでサブタイプのみがインスタンス化します。HierarchicalReferenceとNonHierarchical ReferenceTypeに関連付けられたセマンティックはありません。すべてのReferenceTypeはこのHierarchicalReferenceとNonHierarchical ReferenceTypeのサブタイプとして階層構造されます。

SymmetricとForward Reference

ReferenceTypeが対称の場合、InverseNameは省略され、SourceNodeまたはTargetNodeからの同じセマンティックを意味します。 この場合、両方向は前方参照と見なされます。

Companion Specで良く使用される代表的なReferenceは下記の通りです。それ以外はCSに出るたびにOPC UA Part-3 AddressSpaceを参照してください。

HierarchicalReference

HierarchicalReferencesはAbstract(抽象)ReferenceTypeです。HierarchicalReferencesのSubTypeは階層をまたがることを意味します。

NonHierarchicalReference

NonHierarchicalReferencesはAbstract(抽象)ReferenceTypeです。直接または間接の階層Referenceまたは非階層Referenceのいずれかを継承します。NonHierarchicalReferencesのは階層をまたがらないことを意味します。

GeneratesEvent

GeneratesEventは具体的なReferenceTypeです。Object、View以外のVariable、Methodから生成できるEventを示します。Source NodeはObject、Variable、Methodである必要があります。MethodはAuditSecurityEventTypeへのReferenceを設定し、Methodが呼び出されたときにAuditSecurityEventを生成する可能性があることを意味します。

HasComponent

HasComponentは具体的なReferenceTypeです。Aggregates ReferenceTypeのSubTypeです。Method、DataVaribale、Objectを関連付けするために使用されます。セマンティックは一部です。HasComponentのTargetNodeはSourceNodeの一部です。

HasTypeDefinition

HasTypeDefinitionは具体的なReferenceTypeです。NonHierarchicalReferencesのSubTypeです。セマンティックはObjectまたはVariableをそれぞれObjectTypeまたはVariableTypeにバインドすることです。このReferenceのSourceNodeはObjectまたはVariableでなければなりません。SourceNodeがObjectの場合、TargetNodeはObjectTypeでSource NodeがVariableの場合、TargetNodeはVariableTypeでなければなりません。

HasProperty

HasPropertyは具体的なReferenceTypeです。Aggregates ReferenceTypeのSubTypeです。データの要素を示すために使用されます。このReferenceTypeのSourceNodeは任意のNodeClassですがTargetNodeはVariablesでなければなりません。HasPropertyを使用しVariableはPropertyを定義します。PropertyはProperty自身を定義できないため、PropertyはHasPropertyのSourceNodeにはなりません。

HasSubtype

HasSubtypeは具体的なReferenceTypeです。HasChild ReferenceTypeのサブタイプです。継承の概念を表します。セマンティックはSubType関係を表現することです。SourceNodeはObjectType、VariableType、DataTypeまたはReferenceTypeです。TargetNodeはSourceNodeと同じNodeClassでなければなりません。

Organizes

Organizesは具体的なReferenceです。HierarchicalReferencesのSubTypeで、セマンティックはAddressSpaceでNodeを整理するために使用されます。複数の階層にまたがって使用できます。SourceNodeはObjectまたはViewでなければなりません。 Objectの場合、ObjectType 及びFolderTypeまたはそのいずれかのObjectである必要があります。