# API Changes in v2.26

> Reference: API changes of Opc.UaFx.Advanced in v2.26: 15 added, 0 removed, 1 changed, 0 obsoleted.

<dl class="api-definition">
<dt>Release</dt>
<dd>v2.26.0</dd>
<dt>Compared with</dt>
<dd>v2.25.0</dd>
<dt>Package</dt>
<dd>Opc.UaFx.Advanced</dd>
</dl>

## Added

### Opc.UaFx

| Symbol | Signature |
|---|---|
| [IOpcOrderedObjectNode](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.iopcorderedobjectnode/)<span class="api-meta">1 member</span> | `[OpcNodeType(23513)] public interface IOpcOrderedObjectNode : IOpcNode, IOpcNodeInfo` |
| [OpcDataTypeAttribute.UseDataTypeDefinition](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcdatatypeattribute/members#usedatatypedefinition) | `public bool UseDataTypeDefinition { get; set; }` |
| [OpcDataTypeDeclarations](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcdatatypedeclarations/)<span class="api-meta">3 members</span> | `[Flags] public enum OpcDataTypeDeclarations` |
| [OpcDataTypeInfo.Declarations](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcdatatypeinfo/members#declarations) | `public virtual OpcDataTypeDeclarations Declarations { get; }` |
| [OpcNode.AfterAdded](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcnode/members#afteradded) | `public event OpcNodeAddedEventHandler AfterAdded` |
| [OpcNode.BeforeAdded](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcnode/members#beforeadded) | `public event OpcNodeAddedEventHandler BeforeAdded` |
| [OpcNode.Implement](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcnode/members#implement) | `protected virtual void Implement(OpcContext context)` |
| [OpcNode.OnAfterAdded](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcnode/members#onafteradded) | `protected virtual void OnAfterAdded(OpcNodeAddedEventArgs e)` |
| [OpcNode.OnBeforeAdded](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcnode/members#onbeforeadded) | `protected virtual void OnBeforeAdded(OpcNodeAddedEventArgs e)` |
| [OpcNodeAddedEventArgs](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcnodeaddedeventargs/)<span class="api-meta">2 members</span> | `public class OpcNodeAddedEventArgs : OpcNodeEventArgs` |
| [OpcNodeAddedEventHandler](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcnodeaddedeventhandler/) | `public delegate void OpcNodeAddedEventHandler(object sender, OpcNodeAddedEventArgs e)` |
| [OpcNodeId.Resolution](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcnodeid/members#resolution) | `public static OpcNodeIdResolution Resolution { get; }` |
| [OpcNodeIdResolution](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcnodeidresolution/)<span class="api-meta">1 member</span> | `public sealed class OpcNodeIdResolution` |
| [OpcOrderedObjectListNode](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcorderedobjectlistnode/)<span class="api-meta">9 members</span> | `[OpcNodeType(23518)] public class OpcOrderedObjectListNode : OpcObjectNode, IOpcNode, IOpcNodeInfo` |
| [OpcOrderedObjectNode](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcorderedobjectnode/)<span class="api-meta">9 members</span> | `public abstract class OpcOrderedObjectNode : OpcObjectNode, IOpcOrderedObjectNode, IOpcNode, IOpcNodeInfo` |

## Changed

### Opc.UaFx

| Symbol | Signature (old, new) |
|---|---|
| [OpcNodeTypeAttribute](https://www.traeger.de/en/docs/development/opcua/api/v2.59/opc.uafx.opcnodetypeattribute/) | `[AttributeUsage(AttributeTargets.Class, AllowMultiple = false, Inherited = false)] public class OpcNodeTypeAttribute : Attribute`<br>`[AttributeUsage(AttributeTargets.Class\|AttributeTargets.Interface, AllowMultiple = false, Inherited = false)] public class OpcNodeTypeAttribute : Attribute` |
