10.5 Link to Digital Records

10.5.1 Overview

To provide links to digital records, the ObjectType DocumentationLinksType is introduced, which is deployed as AddIn on Objects representing assets. The AddIn serves as entry point to Variables linking to digital records managed outside the Server. The Variable contains a URI, which is typically a URL. Vendors might add additional Properties defining meta data of the linked document, e.g. type of file or size. In addition, it optionally provides the capabilities to add and remove editable links to user-defined documents like operator’s handbooks.

In Figure 6, an example of using the DocumentationLinks AddIn is given.

Instead of providing the optional Methods to add and remove links, a server not capable of the dynamics in its AddressSpace might also just provide some writable Variables that the user can edit and thus manage its links.

10.5.2 DocumentationLinksType

The DocumentationLinksType is an AddIn and should be applied to Objects or ObjectTypes representing Assets. It is formally defined in Table 29.

Table 29 – DocumentationLinksType Definition
Attribute Value
BrowseNameDocumentationLinksType
IsAbstractFalse
DescriptionAddIn to link documentation provided by the manufacturer and / or end-user.
References NodeClass BrowseName DataType TypeDefinition Other
Subtype of the 0:BaseObjectType Type defined in OPC 10000-5
0:HasPropertyVariable0:DefaultInstanceBrowseName0:QualifiedNamePropertyType
0:HasComponentVariable<Link>0:UriStringBaseDataVariableTypeOP
0:HasComponentMethodAddLinkO
0:HasComponentMethodRemoveLinkO
Conformance Units
AMB DocumentationLinks Base

The Property 0:DefaultInstanceBrowseName defines the default BrowseName of instances of this ObjectType.

The <Link> Variable represents links provided by instances of this type.

The components of the DocumentationLinksType have additional Attributes defined in Table 30.

Table 30 – DocumentationLinksType Attribute values for child Nodes
BrowsePath Value Attribute Description Attribute
0:DefaultInstanceBrowseNameDocumentationLinks
<Link>Represents links to externally managed documentation, typically URLs.
AddLinkMethod to add an end-user specific link that is stored persistently in the server.
RemoveLinkMethod to remove an end-user specific link that is managed in the server.

10.5.3 AddLink Method

This Method provides the capability to persistently add a link to an externally managed resource by adding a Variable according to the input arguments with a HasComponent Reference to the Object the Method is called on. The server shall manage the added link persistently, i.e., if the Method was executed successful, the Variable representing the link shall be persistent and available after restart of the Server. It might disappear after resetting or reconfiguring the Server or after calling the RemoveLink Method. The Value Attribute of the created Node should be writable, so the end-user can change the URI. In addition, the BrowseName, DisplayName, and Description might be writable. Servers might restrict the execution of this Method as well as writing the Attributes to specific users / roles.

The signature of this Method is specified below. Table 31 and Table 32 specify the Arguments and AddressSpace representation, respectively.

Signature

	AddLink (
	  [in]  0:UriString       LinkToExternalSource,
	  [in]  0:QualifiedName   BrowseName,
	  [in]  0:LocalizedText   DisplayName,
	  [in]  0:LocalizedText   Description,
	  [out] 0:NodeId          LinkVariable);

Method Result Codes (defined in Call Service)

Result Code Description
Bad_UserAccessDeniedSee OPC 10000-4 for a general description.
Bad_InvalidArgumentSee OPC 10000-4 for a general description.

10.5.4 RemoveLink Method

This Method provides the capability to remove a Variable representing a link. The Method shall only succeed when the Variable to be deleted is referenced from the Object the Method is called on. Servers might restrict the execution of this Method to specific users / roles. Servers will typically reject the deletion of Nodes not added with the AddLink Method.

The signature of this Method is specified below. Table 33 and Table 34 specify the Arguments and AddressSpace representation, respectively.

Signature

	RemoveLink (
	  [in]  0:NodeId       VariableToBeDeleted
	);

Method Result Codes (defined in Call Service)

Result Code Description
Bad_UserAccessDeniedSee OPC 10000-4 for a general description.
Bad_InvalidArgumentSee OPC 10000-4 for a general description.