The UANodeSetChangesis the root of a document that contains a set of changes to an AddressSpace. It is expected that a single file will contain either a UANodeSetor a UANodeSetChangeselement at the root. It provides a list of Nodes/Referencesto add and/or a list Nodes/Referencesto delete. The UANodeSetChangesStatus structure defined in F.22is produced when a UANodeSetChanges document is applied to an AddressSpace.

The elements of the type are defined in Table F.14.

Table F.14– UANodeSetChanges

Element

Type

Description

NamespaceUris

UriTable

Same as described in Table F.1.

ServerUris

UriTable

Same as described in Table F.1.

Models

ModelTableEntry []

Same as described in Table F.1.

Aliases

AliasTable

Same as described in Table F.1.

Extensions

xs:any []

Same as described in Table F.1.

LastModified

DateTime

Same as described in Table F.1.

NodesToAdd

NodesToAdd

A list of new Nodesto add to the AddressSpace.

ReferencesToAdd

ReferencesToChange

A list of new References to add to the AddressSpace.

NodesToDelete

NodesToDelete

A list of Nodesto delete from the AddressSpace.

ReferencesToDelete

ReferencesToChange

A list of References to delete from the AddressSpace.

TheModels element specifies the version of one or more Modelswhich the UANodeSetChangesfile will create when it is applied to an existing Address Space. The UANodeSetChangescannot be applied if the current version of the Modelin the Address Space is higher. The RequiredModelssub-element (see Table F.1) specifies the versions Modelswhich must already exist before the UANodeSetChangesfile can be applied. When checking dependencies, the version of the Modelin the existing Address Space must exactly match the required version.

If a UANodeSetChanges file modifies types and there are existing instances of the types in the AddressSpace, then the Servershall automatically modify the instances to conform to the new type or generate an error.

AUANodeSetChangesfile is processed as a single operation. This allows mandatory Nodesor Referencesto be replaced by specifying a Node/Referenceto delete and a Node/Referenceto add.