interface InstantiateVariableOptions {
    arrayDimensions?: null | number[];
    browseName: QualifiedNameLike;
    componentOf?: NodeIdLike | BaseNode;
    copyAlsoModellingRules?: boolean;
    dataType?: NodeIdLike;
    description?: LocalizedTextLike;
    displayName?: null | LocalizedTextLike;
    eventSourceOf?: NodeIdLike | BaseNode;
    extensionObject?: ExtensionObject | ExtensionObject[];
    minimumSamplingInterval?: number;
    modellingRule?: ModellingRuleType;
    namespace?: INamespace;
    nodeId?: NodeIdLike;
    notifierOf?: NodeIdLike | BaseNode;
    optionals?: string[];
    organizedBy?: NodeIdLike | BaseNode;
    propertyOf?:
        | NodeIdLike
        | UAObject
        | UAObjectType
        | UAMethod
        | UAVariable
        | UAVariableType;
    value?: BindVariableOptions;
    valueRank?: number;
}

Hierarchy

  • InstantiateOptions
    • InstantiateVariableOptions

Properties

arrayDimensions?: null | number[]
browseName: QualifiedNameLike

the browse name of the new node to instantiate

componentOf?: NodeIdLike | BaseNode

the parent Object holding this object note

  • when componentOf is specified, organizedBy must not be defined
copyAlsoModellingRules?: boolean

shall we also replicate the HasModelling rule reference ?

dataType?: NodeIdLike
description?: LocalizedTextLike

an optional description

if not provided the default description of the corresponding Type will be used.

displayName?: null | LocalizedTextLike

an optional displayName

if not provided the default description of the corresponding browseName will be used.

eventSourceOf?: NodeIdLike | BaseNode
extensionObject?: ExtensionObject | ExtensionObject[]
minimumSamplingInterval?: number
modellingRule?: ModellingRuleType

modellingRule

namespace?: INamespace

the namespace in which the node shall be instantiated (if not specified, the default instance namespace (own namespace) of the addressSpace will be used)

nodeId?: NodeIdLike

a (optional) predefined nodeId to assigned to the instance If not specified, a default nodeid will be created.

notifierOf?: NodeIdLike | BaseNode
optionals?: string[]

a list of components and properties names that have a HasModellingRule of Optional in the type definition that we want to instantiate. Note:

  • the name must follow the OPCUA naming convention and match the browse name of the property (same case)
  • the name can be composed to represent a path to a property or component
  optionals: ["MyOptionalVariable", "MyOptionalMethod", "MyOptionalComponent.MyProperty"];

@default: []

organizedBy?: NodeIdLike | BaseNode

the parent Folder holding this object

note

  • when organizedBy is specified, componentOf must not be defined
propertyOf?:
    | NodeIdLike
    | UAObject
    | UAObjectType
    | UAMethod
    | UAVariable
    | UAVariableType
valueRank?: number

This attribute indicates whether the Value attribute of the Variableis an array and how many dimensions the array has. It may have the following values:

  • n > 1: the Value is an array with the specified number of dimensions.
  • OneDimension (1): The value is an array with one dimension.
  • OneOrMoreDimensions (0): The value is an array with one or more dimensions.
  • Scalar (−1): The value is not an array.
  • Any (−2): The value can be a scalar or an array with any number of dimensions.
  • ScalarOrOneDimension (−3): The value can be a scalar or a one dimensional array.
  • All DataTypes are considered to be scalar, even if they have array-like semantics like ByteString and String.

Note: the valueRank of the instantiated variable must be compatible with the valueRank of the VariableType.