# OpcAddVariableTypeNode Class

> Reference: Defines a single command of the IOpcAddNodesService used to add one variable type node (nodes of the category VariableType).

<span class="api-meta">since v2.9</span>

<dl class="api-definition">
<dt>Namespace</dt>
<dd><a href="../namespaces/opc.uafx">Opc.UaFx</a></dd>
<dt>Assembly</dt>
<dd>Opc.UaFx.Advanced.dll</dd>
<dt>Package</dt>
<dd>Opc.UaFx.Advanced v2.59.0</dd>
<dt>Members</dt>
<dd><a href="./members">OpcAddVariableTypeNode Members</a></dd>
<dt>Also in</dt>
<dd>Opc.UaFx.Client</dd>
</dl>

Defines a single command of the [IOpcAddNodesService](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.services.iopcaddnodesservice/) used to add one variable type node (nodes of the category [VariableType](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcnodecategory/#variabletype)).

## Syntax

<div class="api-signature" data-lang="csharp">

```csharp
public class OpcAddVariableTypeNode : OpcAddTypeNode
```

</div>

<div class="api-signature" data-lang="vbnet">

```vbnet
Public Class OpcAddVariableTypeNode
    Inherits OpcAddTypeNode
```

</div>

## Inheritance

[Object](https://learn.microsoft.com/dotnet/api/system.object) → [OpcServiceCommand](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.services.opcservicecommand/) → [OpcNodeServiceCommand](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.services.opcnodeservicecommand/) → [OpcAddNode](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcaddnode/) → [OpcAddTypeNode](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcaddtypenode/) → **OpcAddVariableTypeNode**

## Constructors

| Name | Description |
|---|---|
| [OpcAddVariableTypeNode](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcaddvariabletypenode/members#opcaddvariabletypenode)<span class="api-meta">16 overloads</span> | Initializes a new instance of the OpcAddVariableTypeNode class using the `name` of the variable type node to add. |

## Properties

| Name | Description |
|---|---|
| [ArrayDimensions](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcaddvariabletypenode/members#arraydimensions) | Gets the number/lengths of dimensions for an array [Value](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcaddvariabletypenode/members#value) with one or more fixed dimensions. |
| [Children](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcaddvariabletypenode/members#children) | Gets a collection of [OpcAddVariableNode](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcaddvariablenode/) instances which define the sub-ordinated nodes to add as children to the node to add. |
| [DataType](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcaddvariabletypenode/members#datatype) | Gets or sets a value which defines a pre-defined used [DataTypeId](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcaddvariabletypenode/members#datatypeid) as one of the members defined by the [OpcDataType](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcdatatype/) enumeration to simplify querying standard data types. |
| [DataTypeId](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcaddvariabletypenode/members#datatypeid) | Gets or stets the identifier which identifies the node that defines the type of data represented by the variable type node. |
| [IsAbstract](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcaddvariabletypenode/members#isabstract)<span class="api-meta">override</span> | Gets or sets a value indicating whether the variable type node to add is abstract and must be overridden. |
| [SuperType](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcaddvariabletypenode/members#supertype) | Gets a value indicating the predefined underlying super type the new node will represent a subtype of. |
| [Value](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcaddvariabletypenode/members#value) | Gets or sets the value of the variable type node which may be simple or complex. |
| [ValueRank](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcaddvariabletypenode/members#valuerank) | Gets or sets a value which indicates whether the value attribute of the variable is an array and how many dimensions the array has. |

Inherits members from [OpcAddTypeNode](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcaddtypenode/members), [OpcAddNode](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcaddnode/members), [OpcNodeServiceCommand](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.services.opcnodeservicecommand/members), [OpcServiceCommand](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.services.opcservicecommand/members).

## Applies to

| Package | Versions |
|---|---|
| Opc.UaFx.Advanced | v2.9–v2.59 |
