## B.2.2 Used type model

The following examples use the type model described below. All Property values are assumed to be string unless otherwise noted

New Reference types:

“HasChild” derived from HierarchicalReference.

“HasAnimal” derived from HierarchicalReference.

“HasPet” derived from HasAnimal.

“HasFarmAnimal” derived from HasAnimal.

“HasSchedule” derived from HierarchicalReference.

HasProperty "LastName".

HasProperty "FirstName".

HasProperty "City".

HasProperty "ZipCode".

May have HasChild reference to a node of type PersonType.

May have HasAnimal reference to a node of type AnimalType (or a subtype of this *Reference* type).


May have HasSchedule reference to a node of type FeedingScheduleType.

HasProperty "Name".


HasProperty "NickName".

HasProperty "DogBreed".



HasProperty "NickName".

HasProperty "CatBreed".


HasProperty "PigBreed".


HasProperty "Period".


HasProperty "Food".

HasProperty "Amount" (Stored as an *Int32*).


AreaType derived from BaseObjectType is just a simple Folder and contains no Properties.

This example type system is shown in Figure B.3. In this Figure, the OPC UA notation is used for all References to ObjectTypes, Variables, Properties and subtypes. Additionally, supported References are contained in an inner box. The actual references only exist in the instances, thus, no connections to other Objects are shown in the Figure and they are subtypes of the listed Reference.

Figure B.3 – Example Type Nodes

A corresponding example set of instances is shown in Figure B.4. These instances include a type Reference for Objects. Properties also have type References, but the References are omitted for simplicity. The name of the Object is provided in the box and a numeric instance NodeId in brackets. Standard ReferenceTypes use the OPC UA notation, custom ReferenceTypes are listed as a named Reference. For Properties, the BrowseName, NodeId, and Value are shown. The Nodes that are included in a View (View1) are enclosed in the coloured box. Two Area nodes are included for grouping of the existing person nodes. All custom nodes are defined in namespace 12 which is not included in Figure B.4.

Figure B.4 – Example Instance Nodes