There are tools helping in the creation of a Companion Specification, which can be found here:

https://opcfoundation.org/Guidelines-And-Templates/

The web page contains links to:

  • Word template for Companion Specifications
  • Guideline document for Companion Specifications, including a section on certification and how to create test cases
  • Visio-Shapes to create standardized figures of OPC UA Information Models

Those documents help creating the document defining the Information Model. For joint working groups, the template needs to be followed since the document is also published in the Online Reference (https://reference.opcfoundation.org/) and therefore needs to be processed and converted into a web page.

There are various tools available to create a UaNodeSet which can be found in the OPC Foundation Marketplace (https://opcfoundation.org/products/ - filter for tools / information modelling).

In order to validate that the UaNodeSet and the specification document are in sync, the OPC Foundation provides the NodeSet-Validator (https://apps.opcfoundation.org/NodeSetValidator). This validator needs to be passed before a Companion Specification is published by the OPC Foundation.

Note that the word template is not bound to working groups of the OPC Foundation, everybody creating an OPC UA based Information Model can use this template as a base to document their Information Model.

Note that the OPC UA specification has changed how it defines structured and enumeration data types. Instead of a DataTypeDictionary (see OPC 10000-5) having additional Nodes in the AddressSpace, the attribute DataTypeDefinition (see OPC 10000-3) is used. UaNodeSets of a Companion Specification should still contain the DataTypeDictionary Nodes in order to have the NodeIds standardized, in case applications still want to support the old mechanism.