# IOpcNodeInfo Interface

<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">IOpcNodeInfo Members</a></dd>
<dt>Also in</dt>
<dd>Opc.UaFx.Client</dd>
</dl>

Defines an interface which can be used to access basic properties used over any kind of node in an immutable way.

## Syntax

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

```csharp
public interface IOpcNodeInfo
```

</div>

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

```vbnet
Public Interface IOpcNodeInfo
```

</div>

## Derived types

- [OpcAnalogItemNodeInfo](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.client.opcanalogitemnodeinfo/)
- [OpcDataTypeDescriptionNodeInfo](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.client.opcdatatypedescriptionnodeinfo/)
- [OpcDataTypeDictionaryNodeInfo](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.client.opcdatatypedictionarynodeinfo/)
- [OpcDataTypeEncodingNodeInfo](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.client.opcdatatypeencodingnodeinfo/)
- [OpcDataTypeNodeInfo](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.client.opcdatatypenodeinfo/)
- [OpcDataTypeSystemNodeInfo](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.client.opcdatatypesystemnodeinfo/)
- [OpcInstanceNodeInfo](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.client.opcinstancenodeinfo/)
- [OpcMethodNodeInfo](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.client.opcmethodnodeinfo/)
- [OpcNodeInfo](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.client.opcnodeinfo/)
- [OpcObjectNodeInfo](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.client.opcobjectnodeinfo/)
- [OpcObjectTypeNodeInfo](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.client.opcobjecttypenodeinfo/)
- [OpcTypeNodeInfo](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.client.opctypenodeinfo/)
- [OpcVariableNodeInfo](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.client.opcvariablenodeinfo/)
- [OpcVariableTypeNodeInfo](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.client.opcvariabletypenodeinfo/)
- [OpcAcknowledgeableConditionNode](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcacknowledgeableconditionnode/)
- [OpcActionMethodNode](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcactionmethodnode/)
- [OpcAddCommentMethodNode](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcaddcommentmethodnode/)
- [OpcAggregateConfigurationNode](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcaggregateconfigurationnode/)
- [OpcAlarmConditionNode](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcalarmconditionnode/)
- [OpcAnalogItemNode](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcanalogitemnode/)
- [OpcAnalogItemNode&lt;T&gt;](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcanalogitemnode-1/)
- [OpcAnalogUnitNode](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcanalogunitnode/)
- [OpcAnalogUnitNode&lt;T&gt;](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcanalogunitnode-1/)
- [OpcAnalogUnitRangeNode](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcanalogunitrangenode/)
- [OpcAnalogUnitRangeNode&lt;T&gt;](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcanalogunitrangenode-1/)
- [OpcConditionNode](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcconditionnode/)
- [OpcConditionVariableNode](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcconditionvariablenode/)
- [OpcConditionVariableNode&lt;T&gt;](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcconditionvariablenode-1/)
- [OpcDataItemNode](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcdataitemnode/)
- [OpcDataItemNode&lt;T&gt;](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcdataitemnode-1/)
- [OpcDataTypeDictionaryNode](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcdatatypedictionarynode/)
- [OpcDataTypeNode](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcdatatypenode/)
- [OpcDataTypeNode&lt;T&gt;](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcdatatypenode-1/)
- [OpcDataVariableNode](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcdatavariablenode/)
- [OpcDataVariableNode&lt;T&gt;](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcdatavariablenode-1/)
- [OpcDialogConditionNode](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcdialogconditionnode/)
- [OpcDialogResponseMethodNode](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcdialogresponsemethodnode/)
- [OpcDiscreteAlarmNode](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcdiscretealarmnode/)
- [OpcDiscreteItemNode](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcdiscreteitemnode/)
- [OpcDiscreteItemNode&lt;T&gt;](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcdiscreteitemnode-1/)
- [OpcEngineeringUnitInfoPropertyNode](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcengineeringunitinfopropertynode/)
- [OpcEnumValuesPropertyNode](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcenumvaluespropertynode/)
- [OpcEventNode](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opceventnode/)
- [OpcExclusiveDeviationAlarmNode](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcexclusivedeviationalarmnode/)
- [OpcExclusiveLevelAlarmNode](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcexclusivelevelalarmnode/)
- [OpcExclusiveLimitAlarmNode](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcexclusivelimitalarmnode/)
- [OpcExclusiveLimitStateMachineNode](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcexclusivelimitstatemachinenode/)
- [OpcExclusiveRateOfChangeAlarmNode](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcexclusiverateofchangealarmnode/)
- [OpcFileCloseMethodNode](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcfileclosemethodnode/)
- [OpcFileGetPositionMethodNode](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcfilegetpositionmethodnode/)
- [OpcFileNode](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcfilenode/)
- [OpcFileOpenMethodNode](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcfileopenmethodnode/)
- [OpcFileReadMethodNode](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcfilereadmethodnode/)
- [OpcFileSetPositionMethodNode](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcfilesetpositionmethodnode/)
- [OpcFileWriteMethodNode](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcfilewritemethodnode/)
- [OpcFiniteStateMachineNode](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcfinitestatemachinenode/)
- [OpcFiniteStateMachineNode&lt;T&gt;](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcfinitestatemachinenode-1/)
- [OpcFiniteStateVariableNode](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcfinitestatevariablenode/)
- [OpcFiniteTransitionVariableNode](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcfinitetransitionvariablenode/)
- [OpcFolderNode](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcfoldernode/)
- [OpcGeneralModelChangeEventNode](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcgeneralmodelchangeeventnode/)
- [OpcHistoryConfigurationNode](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opchistoryconfigurationnode/)
- [OpcInstanceNode](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcinstancenode/)
- [OpcLimitAlarmNode](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opclimitalarmnode/)
- [OpcMethodNode](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcmethodnode/)
- [OpcMethodNode&lt;T&gt;](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcmethodnode-1/)
- [OpcModelChangeEventNode](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcmodelchangeeventnode/)
- [OpcMultiStateDiscreteNode](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcmultistatediscretenode/)
- [OpcMultiStateDiscreteNode&lt;T&gt;](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcmultistatediscretenode-1/)
- [OpcMultiStateValueDiscreteNode](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcmultistatevaluediscretenode/)
- [OpcMultiStateValueDiscreteNode&lt;T&gt;](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcmultistatevaluediscretenode-1/)
- [OpcNamePropertyNode](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcnamepropertynode/)
- [OpcNode](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcnode/)
- [OpcNodeFieldInfo](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcnodefieldinfo/)
- [OpcNodeIdArrayVariableNode](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcnodeidarrayvariablenode/)
- [OpcNodeIdPropertyNode](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcnodeidpropertynode/)
- [OpcNodeIdVariableNode](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcnodeidvariablenode/)
- [OpcNodeMemberInfo](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcnodememberinfo/)
- [OpcNodeMethodInfo](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcnodemethodinfo/)
- [OpcNodeObjectInfo](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcnodeobjectinfo/)
- [OpcNodePropertyInfo](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcnodepropertyinfo/)
- [OpcNodeTypeInfo](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcnodetypeinfo/)
- [OpcNodeTypeNode](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcnodetypenode/)
- [OpcNodeTypeNode&lt;T&gt;](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcnodetypenode-1/)
- [OpcNonExclusiveDeviationAlarmNode](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcnonexclusivedeviationalarmnode/)
- [OpcNonExclusiveLevelAlarmNode](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcnonexclusivelevelalarmnode/)
- [OpcNonExclusiveLimitAlarmNode](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcnonexclusivelimitalarmnode/)
- [OpcNonExclusiveRateOfChangeAlarmNode](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcnonexclusiverateofchangealarmnode/)
- [OpcObjectNode](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcobjectnode/)
- [OpcObjectTypeInfo](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcobjecttypeinfo/)
- [OpcOffNormalAlarmNode](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcoffnormalalarmnode/)
- [OpcOrderedObjectListNode](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcorderedobjectlistnode/)
- [OpcOrderedObjectNode](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcorderedobjectnode/)
- [OpcPropertyNode](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcpropertynode/)
- [OpcPropertyNode&lt;T&gt;](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcpropertynode-1/)
- [OpcServerStatePropertyNode](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcserverstatepropertynode/)
- [OpcShelvedStateMachineNode](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcshelvedstatemachinenode/)
- [OpcStateMachineNode](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcstatemachinenode/)
- [OpcStateNode](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcstatenode/)
- [OpcStateVariableNode](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcstatevariablenode/)
- [OpcStatusConditionVariableNode](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcstatusconditionvariablenode/)
- [OpcTextArrayPropertyNode](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opctextarraypropertynode/)
- [OpcTextConditionVariableNode](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opctextconditionvariablenode/)
- [OpcTextPropertyNode](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opctextpropertynode/)
- [OpcTextVariableNode](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opctextvariablenode/)
- [OpcTimedShelveMethodNode](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opctimedshelvemethodnode/)
- [OpcTransitionNode](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opctransitionnode/)
- [OpcTransitionVariableNode](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opctransitionvariablenode/)
- [OpcTripAlarmNode](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opctripalarmnode/)
- [OpcTwoStateDiscreteNode](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opctwostatediscretenode/)
- [OpcTwoStateVariableNode](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opctwostatevariablenode/)
- [OpcTypeNode](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opctypenode/)
- [OpcValueRangePropertyNode](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcvaluerangepropertynode/)
- [OpcVariableNode](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcvariablenode/)
- [OpcVariableTypeInfo](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcvariabletypeinfo/)

## Properties

| Name | Description |
|---|---|
| [Category](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.iopcnodeinfo/members#category) | Gets the [NodeCategory](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcattribute/#nodecategory) attribute which identifies the kind of node and is therefore used to classify the node regarding its use and purpose. |
| [Description](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.iopcnodeinfo/members#description) | Gets the value of the optional [Description](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcattribute/#description) attribute which shall explain the meaning of the node. |
| [DisplayName](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.iopcnodeinfo/members#displayname) | Gets the value of the [DisplayName](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcattribute/#displayname) attribute which defines the localizable name of the node. |
| [Id](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.iopcnodeinfo/members#id) | Gets the value of the [NodeId](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcattribute/#nodeid) attribute which unambiguously identifies the node. |
| [Name](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.iopcnodeinfo/members#name) | Gets the value of the [BrowseName](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcattribute/#browsename) attribute which defines the non-localizable human-readable name used when browsing the address space. |
| [Parent](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.iopcnodeinfo/members#parent) | Gets the parent node of the node. |
| [SymbolicName](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.iopcnodeinfo/members#symbolicname) | Gets a symbolic name for the node which is not expected to be globally unique. |
| [UserWriteAccess](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.iopcnodeinfo/members#userwriteaccess)<span class="api-meta">since v2.50</span> | Gets the value of the optional [UserWriteAccess](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcattribute/#userwriteaccess) attribute which exposes the possibilities of a client to write the attributes of the node taking user access rights into account. |
| [WriteAccess](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.iopcnodeinfo/members#writeaccess)<span class="api-meta">since v2.50</span> | Gets the value of the optional [WriteAccess](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcattribute/#writeaccess) attribute which exposes the possibilities of a client to write the attributes of the node. |

## Methods

| Name | Description |
|---|---|
| [AttributeValue](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.iopcnodeinfo/members#attributevalue)<span class="api-meta">2 overloads · since v2.9</span> | Retrieves the value of the `attribute` specified. |
| [Child](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.iopcnodeinfo/members#child)<span class="api-meta">3 overloads</span> | Retrieves the immutable child node its [Name](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.iopcnodeinfo/members#name) (its [Value](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcname/members#value)) or [DisplayName](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.iopcnodeinfo/members#displayname) (its [Value](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opctext/members#value)) matches the specified `name` of the node. |
| [Children](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.iopcnodeinfo/members#children)<span class="api-meta">since v2.9</span> | Retrieves a sequence of immutable nodes organized as children of this node. |
| [References](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.iopcnodeinfo/members#references)<span class="api-meta">since v2.50</span> | Retrieves a sequence of immutable references between this node and other nodes. |

## Applies to

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