Skip to content

mpostol/UA-Nodeset

 
 

Repository files navigation

OPC UA NodeSets, ModelDesign and Other Supporting Files

Table of Contents

Executive Summary

The repository has been forked from OPCFoundation/UA-Nodeset and will be synchronized with the origin repository occasionally.

The main goal is to

Repository Content

This repository contains

  • UANodeSet and other associated files, which are released with a specification
  • outcomes of the research conducted according to the mentioned above project goals

This repository is interconnected with the origin to harmonize any change to a specification (release of a new version or errata) that may require a change of worked out outcome.

For each specification the following normative files need to be published:

  • *.NodeSet2.xml - The formal definition of the Nodes defined by the specification;
  • *.Types.xsd - The XML schema for the DataTypes defined by the specification;
  • *.Types.bsd - The OPC Binary schema for the DataTypes defined by the specification (obsolete);
  • *.NodeIds.csv - A CSV file containing the NodeIds assigned to Nodes defined by the specification;

In addition, the following non-normative support files may be published:

  • *.Classes.cs - C# classes for Nodes used with the .NETStandard stack;
  • *.DataTypes.cs - C# classes for DataTypes used with the .NETStandard stack;
  • *.Constants.cs - C# constant declarations used with the .NETStandard stack;
  • *.PredefinedNodes.uanodes - A non-normative binary representation of the UANodeSet for use with .NETStandard stack;

If a companion specification working group uses the ModelCompiler to create the UANodeSet then the following files are published:

  • *.Model.xml - The Nodes defined by the specification using the schema needed by the ModelCompiler;
  • *.Model.csv - The NodeIds assigned to the Nodes defined by the specification;

If a companion specification working group doesn't use ModelCompiler the above-mentioned files are to be recovered from existing ones (*.NodeSet2.xml) using Address Space Prototyping Tool (asp.exe).

The v1.04 branch is to be synchronized with the origin. This branch contains released models according to the OPC UA specification and is occasionally updated against the origin. According to the origin repository rules, when a companion specification is released it will be added to this branch in a folder named after the release of the OPC UA specification. To get more about the origin repository organization check out the document OPC UA NodeSets and Other Supporting Files

The main branch (default) contains a merge of the v1.04 and outcomes of the research conducted using independent branches.

The OPC UA Models Documentation; Models Browser contains online help documentation.

Partnership program

I am a researcher and University associate who is passionate about applying knowledge and experience in building a Machine to Machine (M2M) meaningful interoperability based on OPC UA. Let's build it with you and for you. To join our effort and create an organizational context I have launched an open-access Object-Oriented Internet Partnership Program. Hence, maintenance of this repository and further development of the OPC UA Information Model Domain-Specific Language will be carried out under a broader concept described in the following article

Object-Oriented Internet Partnership Program

Consider joining. Visit the section How to be involved to get more. I hope that thanks to this partnership program we will establish long-term mutually beneficial cooperation. Your participation is needed to make sure that the work will continue as expected. As a rule of thumb, the work priority is derived from community feedback.

I strongly encourage community participation and contribution to this project. First, please fork the repository and commit your changes there. Once happy with your changes you can generate a 'pull request'.

When contributing to this repository, please first discuss the change you wish to make via issue, email, or any other method with the owners of this repository before making a change.

Please note we have a code of conduct, please follow it in all your interactions with the project.

See Also

Join me at LinkedIn