# OpcInstanceNodeInfo Members

> Reference: Provides properties and methods for the examination of the attributes and references of a node which is classified as a specialization of an instance node.

<dl class="api-definition">
<dt>Type</dt>
<dd><a href="./">OpcInstanceNodeInfo</a></dd>
<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>Also in</dt>
<dd>Opc.UaFx.Client</dd>
</dl>

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

## Constructors

### OpcInstanceNodeInfo

<span class="api-meta">protected · 2 overloads</span>

| Overload | Description |
|---|---|
| [OpcInstanceNodeInfo(OpcBrowseNodeContext, OpcReferenceDescription)](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.client.opcinstancenodeinfo/members#opcinstancenodeinfo-opc-uafx-client-opcbrowsenodecontext-opc-uafx-opcreferencedescription)<span class="api-meta">protected</span> | Initializes a new instance of the [OpcInstanceNodeInfo](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.client.opcinstancenodeinfo/) class using the used context and concrete reference to the object node which is to be represented. |
| [OpcInstanceNodeInfo(OpcNodeInfo, OpcReferenceDescription)](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.client.opcinstancenodeinfo/members#opcinstancenodeinfo-opc-uafx-client-opcnodeinfo-opc-uafx-opcreferencedescription)<span class="api-meta">protected</span> | Initializes a new instance of the [OpcInstanceNodeInfo](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.client.opcinstancenodeinfo/) class using node information from which the new node information originates from and the concrete reference to the node which is to be represented. |

#### OpcInstanceNodeInfo(OpcBrowseNodeContext, OpcReferenceDescription)

<span class="api-meta">protected</span>

Initializes a new instance of the [OpcInstanceNodeInfo](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.client.opcinstancenodeinfo/) class using the used context and concrete reference to the object node which is to be represented.

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

```csharp
protected OpcInstanceNodeInfo(
    OpcBrowseNodeContext context,
    OpcReferenceDescription reference)
```

</div>

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

```vbnet
Protected Sub New(
    context As OpcBrowseNodeContext,
    reference As OpcReferenceDescription)
```

</div>

**Parameters**

| Name | Type | Description |
|---|---|---|
| `context` | [OpcBrowseNodeContext](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.client.opcbrowsenodecontext/) | The [OpcBrowseNodeContext](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.client.opcbrowsenodecontext/) which provides the circumstances through that the object node has been located and through that further nodes have to be examined. |
| `reference` | [OpcReferenceDescription](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcreferencedescription/) | The [OpcReferenceDescription](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcreferencedescription/) of the node reference through that the object node to represent has been located. |

**Exceptions**

| Exception | Condition |
|---|---|
| [ArgumentNullException](https://learn.microsoft.com/dotnet/api/system.argumentnullexception) | The `context` or `reference` is a null reference (Nothing in Visual Basic). |

#### OpcInstanceNodeInfo(OpcNodeInfo, OpcReferenceDescription)

<span class="api-meta">protected</span>

Initializes a new instance of the [OpcInstanceNodeInfo](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.client.opcinstancenodeinfo/) class using node information from which the new node information originates from and the concrete reference to the node which is to be represented.

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

```csharp
protected OpcInstanceNodeInfo(
    OpcNodeInfo source,
    OpcReferenceDescription reference)
```

</div>

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

```vbnet
Protected Sub New(source As OpcNodeInfo, reference As OpcReferenceDescription)
```

</div>

**Parameters**

| Name | Type | Description |
|---|---|---|
| `source` | [OpcNodeInfo](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.client.opcnodeinfo/) | The source node from which the node information represented originates. |
| `reference` | [OpcReferenceDescription](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcreferencedescription/) | The [OpcReferenceDescription](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcreferencedescription/) of the node reference through that the node to represent has been located. |

**Exceptions**

| Exception | Condition |
|---|---|
| [ArgumentNullException](https://learn.microsoft.com/dotnet/api/system.argumentnullexception) | The `source` or `reference` is a null reference (Nothing in Visual Basic). |

## Properties

### TypeDefinition

Gets the [OpcTypeNodeInfo](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.client.opctypenodeinfo/) about the type definition node of the instance node represented.

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

```csharp
public OpcTypeNodeInfo TypeDefinition { get; }
```

</div>

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

```vbnet
Public ReadOnly Property TypeDefinition As OpcTypeNodeInfo
```

</div>

**Property value**

[OpcTypeNodeInfo](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.client.opctypenodeinfo/)

An instance of the [OpcTypeNodeInfo](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.client.opctypenodeinfo/) representing the type definition of the instance node represented. In case there is no known type definition for the type referenced by the instance node a null reference (Nothing in Visual Basic).

### TypeDefinitionId

Gets the [OpcNodeId](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcnodeid/) about the type definition node of the instance node represented.

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

```csharp
public OpcNodeId TypeDefinitionId { get; }
```

</div>

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

```vbnet
Public ReadOnly Property TypeDefinitionId As OpcNodeId
```

</div>

**Property value**

[OpcNodeId](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcnodeid/)

An instance of the [OpcNodeId](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcnodeid/) which identifies the type definition node of the instance node represented. In case there is no type definition for the type of node defined by the instance node represented a null reference (Nothing in Visual Basic).

**Remarks**

The time consumed by the first call of the property depends on the availability of the server, because of the type definition is requested on-demand and is cached for subsequent calls. This means, that further type definition requests will take use of already retrieved node information and will not demand additional network resources.
