The OrderedListType is a base type to manage an ordered list of Objects. It is formally defined in Table 65.

Table 65 – OrderedListType Definition

Attribute

Value

BrowseName

OrderedListType

IsAbstract

False

References

Node Class

BrowseName

DataType

TypeDefinition

Other

Subtype of the BaseObjectType defined in 6.2 i.e. inheriting the InstanceDeclarations of that Node.

HasOrderedComponent

Object

<OrderedObject>

BaseObjectType

OP

HasProperty

Variable

NodeVersion

String

PropertyType

O

GeneratesEvent

ObjectType

GeneralModelChangeEventType

Conformance Units

Base Info OrderedList

The <OrderedObject> Object represents the ordered Objects managed by Instances of the OrderedListType. The order is provided by the 0:HasOrderedComponent References to the Objects. As not all Clients consider the order returned by the Browse Service (e.g. displaying the results in alphabetic order) each <OrderedObject> shall implement the IOrderedObjectType Interface, providing the order by a specific Property (see definition of IOrderedObjectType).

The NodeVersion is intended to be used in conjunction with the GeneralModelChangeEventType in the way defined in OPC 10000-3. The NodeVersion should be provided if the ordered List can change (e.g. new Objects added or removed). This allows Clients to subscribe to the Property or the GeneralModelChangeEvents, instead of polling Browse calls. Changes in the order of the List are considered as adding and deleting References, i.e. if the order changes the NodeVersion shall be changed and a GeneralModelChangeEvent shall be issued, indicating that References have been added and deleted.

In Table 66 the additional References are defined.

Table 66 – OrderedListType Additional Subcomponents

SourcePath

References

NodeClass

BrowseName

DataType

TypeDefinition

Other

<OrderedObject>

HasProperty

Variable

NumberInList

Number

PropertyType

M

<OrderedObject>

HasInterface

ObjectType

IOrderedObjectType

The <OrderedObject> Object shall implement the Interface IOrderedObjectType and therefore contains the mandatory Property NumberInList.