# OpcTypeNodeInfo Class

> Reference: Provides properties and methods for the examination of the attributes and references of a node which is classified as DataType, ObjectType or VariableType.

<dl class="api-definition">
<dt>Namespace</dt>
<dd><a href="../namespaces/opc.uafx.client">Opc.UaFx.Client</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">OpcTypeNodeInfo Members</a></dd>
<dt>Also in</dt>
<dd>Opc.UaFx.Client</dd>
</dl>

Provides properties and methods for the examination of the attributes and references of a node which is classified as [DataType](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcnodecategory/#datatype), [ObjectType](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcnodecategory/#objecttype) or [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 OpcTypeNodeInfo : OpcNodeInfo
```

</div>

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

```vbnet
Public Class OpcTypeNodeInfo
    Inherits OpcNodeInfo
```

</div>

## Inheritance

[Object](https://learn.microsoft.com/dotnet/api/system.object) → [OpcNodeInfo](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.client.opcnodeinfo/) → **OpcTypeNodeInfo**

## Implements

<ul class="api-implements">
<li><a href="../opc.uafx.iopcnodeinfo/">IOpcNodeInfo</a></li>
</ul>

## Derived types

- [OpcDataTypeNodeInfo](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.client.opcdatatypenodeinfo/)
- [OpcObjectTypeNodeInfo](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.client.opcobjecttypenodeinfo/)
- [OpcVariableTypeNodeInfo](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.client.opcvariabletypenodeinfo/)

## Properties

| Name | Description |
|---|---|
| [BaseType](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.client.opctypenodeinfo/members#basetype) | Gets the [OpcNodeInfo](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.client.opcnodeinfo/) about the immediate super type node of the type node represented. |
| [BaseTypeId](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.client.opctypenodeinfo/members#basetypeid) | Gets the [OpcNodeId](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcnodeid/) about the immediate super type node of the type node represented. |
| [IsAbstract](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.client.opctypenodeinfo/members#isabstract) | Gets a value indicating whether the type represented can be instantiated directly. |
| [IsEnum](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.client.opctypenodeinfo/members#isenum) | Gets a value indicating whether the type represented is an enumeration. |
| [IsSystemType](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.client.opctypenodeinfo/members#issystemtype) | Gets a value indicating whether the type represented is one of the predefined built-in data types defined by the OPC UA. |
| [UnderlyingType](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.client.opctypenodeinfo/members#underlyingtype) | Gets the underlying built-in data type definition of the node type represented. |

## Methods

| Name | Description |
|---|---|
| [GetEnumMembers](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.client.opctypenodeinfo/members#getenummembers) | Retrieves all the enumeration members defined by the data type node. |
| [GetSubTypeIds](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.client.opctypenodeinfo/members#getsubtypeids) | Retrieves for each sub type node of the type node represented the canonical identifiers. |
| [GetSubTypes](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.client.opctypenodeinfo/members#getsubtypes) | Retrieves for each sub type node of the type node represented an instance of the OpcTypeNodeInfo class. |
| [IsSubTypeOf](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.client.opctypenodeinfo/members#issubtypeof) | Determines whether the current represented type node derives from the type node identified by the `nodeId` specified. |

Inherits members from [OpcNodeInfo](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.client.opcnodeinfo/members).

## Applies to

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