{
  "arguments": {
    "dataSet": {
      "validationFingerprint": "AMWA NMOS Device Control Mock Application|v1.0",
      "values": [
        {
          "path": ["root"],
          "dependencyPaths": [],
          "allowedMembersClasses": [],
          "values": [
            {
              "id": {"level": 2, "index": 1},
              "descriptor": {
                "description": "TRUE if block is functional",
                "id": {"level": 2, "index": 1},
                "name": "enabled",
                "typeName": "NcBoolean",
                "isReadOnly": true,
                "isNullable": false,
                "isSequence": false,
                "constraints": null,
                "isDeprecated": false
              },
              "value": true
            },
            {
              "id": {"level": 2, "index": 2},
              "descriptor": {
                "description": "Descriptors of this block's members",
                "id": {"level": 2, "index": 2},
                "name": "members",
                "typeName": "NcBlockMemberDescriptor",
                "isReadOnly": true,
                "isNullable": false,
                "isSequence": true,
                "constraints": null,
                "isDeprecated": false
              },
              "value": [
                {
                  "description": "The device manager offers information about the product this device is representing",
                  "role": "DeviceManager",
                  "oid": 2,
                  "constantOid": true,
                  "classId": [1, 3, 1],
                  "userLabel": "Device manager",
                  "owner": 1
                },
                {
                  "description": "The class manager offers access to control class and data type descriptors",
                  "role": "ClassManager",
                  "oid": 3,
                  "constantOid": true,
                  "classId": [1, 3, 2],
                  "userLabel": "Class manager",
                  "owner": 1
                },
                {
                  "description": "Receivers block",
                  "role": "receivers",
                  "oid": 9,
                  "constantOid": true,
                  "classId": [1, 1],
                  "userLabel": "Receivers",
                  "owner": 1
                },
                {
                  "description": "Senders block",
                  "role": "senders",
                  "oid": 11,
                  "constantOid": true,
                  "classId": [1, 1],
                  "userLabel": "Senders",
                  "owner": 1
                },
                {
                  "description": "Stereo gain block",
                  "role": "stereo-gain",
                  "oid": 4,
                  "constantOid": true,
                  "classId": [1, 1],
                  "userLabel": "Stereo gain",
                  "owner": 1
                },
                {
                  "description": "Example controls block",
                  "role": "example-controls",
                  "oid": 14,
                  "constantOid": true,
                  "classId": [1, 1],
                  "userLabel": "Example controls",
                  "owner": 1
                },
                {
                  "description": "Identification beacon",
                  "role": "IdentBeacon",
                  "oid": 13,
                  "constantOid": true,
                  "classId": [1, 2, 1],
                  "userLabel": "Identification beacon",
                  "owner": 1
                }
              ]
            },
            {
              "id": {"level": 1, "index": 1},
              "descriptor": {
                "description": "Static value. All instances of the same class will have the same identity value",
                "id": {"level": 1, "index": 1},
                "name": "classId",
                "typeName": "NcClassId",
                "isReadOnly": true,
                "isNullable": false,
                "isSequence": false,
                "constraints": null,
                "isDeprecated": false
              },
              "value": [1, 1]
            },
            {
              "id": {"level": 1, "index": 2},
              "descriptor": {
                "description": "Object identifier",
                "id": {"level": 1, "index": 2},
                "name": "oid",
                "typeName": "NcOid",
                "isReadOnly": true,
                "isNullable": false,
                "isSequence": false,
                "constraints": null,
                "isDeprecated": false
              },
              "value": 1
            },
            {
              "id": {"level": 1, "index": 3},
              "descriptor": {
                "description": "TRUE iff OID is hardwired into device",
                "id": {"level": 1, "index": 3},
                "name": "constantOid",
                "typeName": "NcBoolean",
                "isReadOnly": true,
                "isNullable": false,
                "isSequence": false,
                "constraints": null,
                "isDeprecated": false
              },
              "value": true
            },
            {
              "id": {"level": 1, "index": 4},
              "descriptor": {
                "description": "OID of containing block. Can only ever be null for the root block",
                "id": {"level": 1, "index": 4},
                "name": "owner",
                "typeName": "NcOid",
                "isReadOnly": true,
                "isNullable": true,
                "isSequence": false,
                "constraints": null,
                "isDeprecated": false
              },
              "value": null
            },
            {
              "id": {"level": 1, "index": 5},
              "descriptor": {
                "description": "role of obj in containing block",
                "id": {"level": 1, "index": 5},
                "name": "role",
                "typeName": "NcString",
                "isReadOnly": true,
                "isNullable": false,
                "isSequence": false,
                "constraints": null,
                "isDeprecated": false
              },
              "value": "root"
            },
            {
              "id": {"level": 1, "index": 6},
              "descriptor": {
                "description": "Scribble strip",
                "id": {"level": 1, "index": 6},
                "name": "userLabel",
                "typeName": "NcString",
                "isReadOnly": false,
                "isNullable": true,
                "isSequence": false,
                "constraints": null,
                "isDeprecated": false
              },
              "value": "Root"
            },
            {
              "id": {"level": 1, "index": 7},
              "descriptor": {
                "description": "Touchpoints to other contexts",
                "id": {"level": 1, "index": 7},
                "name": "touchpoints",
                "typeName": "NcTouchpoint",
                "isReadOnly": true,
                "isNullable": true,
                "isSequence": true,
                "constraints": null,
                "isDeprecated": false
              },
              "value": null
            },
            {
              "id": {"level": 1, "index": 8},
              "descriptor": {
                "description": "Runtime property constraints",
                "id": {"level": 1, "index": 8},
                "name": "runtimePropertyConstraints",
                "typeName": "NcPropertyConstraints",
                "isReadOnly": true,
                "isNullable": true,
                "isSequence": true,
                "constraints": null,
                "isDeprecated": false
              },
              "value": null
            }
          ],
          "isRebuildable": false
        },
        {
          "path": ["root", "DeviceManager"],
          "dependencyPaths": [],
          "allowedMembersClasses": [],
          "values": [
            {
              "id": {"level": 3, "index": 1},
              "descriptor": {
                "description": "Version of nc this dev uses",
                "id": {"level": 3, "index": 1},
                "name": "ncVersion",
                "typeName": "NcVersionCode",
                "isReadOnly": true,
                "isNullable": false,
                "isSequence": false,
                "constraints": null,
                "isDeprecated": false
              },
              "value": "v1.0.0"
            },
            {
              "id": {"level": 3, "index": 2},
              "descriptor": {
                "description": "Manufacturer descriptor",
                "id": {"level": 3, "index": 2},
                "name": "manufacturer",
                "typeName": "NcManufacturer",
                "isReadOnly": true,
                "isNullable": false,
                "isSequence": false,
                "constraints": null,
                "isDeprecated": false
              },
              "value": {
                "name"          : "Mock manufacturer",
                "organizationId": null,
                "website"       : "https://specs.amwa.tv/nmos/"
              }
            },
            {
              "id": {"level": 3, "index": 3},
              "descriptor": {
                "description": "Product descriptor",
                "id": {"level": 3, "index": 3},
                "name": "product",
                "typeName": "NcProduct",
                "isReadOnly": true,
                "isNullable": false,
                "isSequence": false,
                "constraints": null,
                "isDeprecated": false
              },
              "value": {
                "name"         : "Mock device",
                "key"          : "mock-001",
                "revisionLevel": "1.0.0",
                "brandName"    : "Mock brand",
                "uuid"         : "2dcd15f6-aecc-4f01-bf66-b1044c677ef4",
                "description"  : "Mock device for testing and prototyping"
              }
            },
            {
              "id": {"level": 3, "index": 4},
              "descriptor": {
                "description": "Serial number",
                "id": {"level": 3, "index": 4},
                "name": "serialNumber",
                "typeName": "NcString",
                "isReadOnly": true,
                "isNullable": false,
                "isSequence": false,
                "constraints": null,
                "isDeprecated": false
              },
              "value": "123-mock"
            },
            {
              "id": {"level": 3, "index": 5},
              "descriptor": {
                "description": "Asset tracking identifier (user specified)",
                "id": {"level": 3, "index": 5},
                "name": "userInventoryCode",
                "typeName": "NcString",
                "isReadOnly": false,
                "isNullable": true,
                "isSequence": false,
                "constraints": null,
                "isDeprecated": false
              },
              "value": null
            },
            {
              "id": {"level": 3, "index": 6},
              "descriptor": {
                "description": "Name of this device in the application. Instance name, not product name.",
                "id": {"level": 3, "index": 6},
                "name": "deviceName",
                "typeName": "NcString",
                "isReadOnly": false,
                "isNullable": true,
                "isSequence": false,
                "constraints": null,
                "isDeprecated": false
              },
              "value": null
            },
            {
              "id": {"level": 3, "index": 7},
              "descriptor": {
                "description": "Role of this device in the application.",
                "id": {"level": 3, "index": 7},
                "name": "deviceRole",
                "typeName": "NcString",
                "isReadOnly": false,
                "isNullable": true,
                "isSequence": false,
                "constraints": null,
                "isDeprecated": false
              },
              "value": null
            },
            {
              "id": {"level": 3, "index": 8},
              "descriptor": {
                "description": "Device operational state",
                "id": {"level": 3, "index": 8},
                "name": "operationalState",
                "typeName": "NcDeviceOperationalState",
                "isReadOnly": true,
                "isNullable": false,
                "isSequence": false,
                "constraints": null,
                "isDeprecated": false
              },
              "value": {"generic": 1, "deviceSpecificDetails": null}
            },
            {
              "id": {"level": 3, "index": 9},
              "descriptor": {
                "description": "Reason for most recent reset",
                "id": {"level": 3, "index": 9},
                "name": "resetCause",
                "typeName": "NcResetCause",
                "isReadOnly": true,
                "isNullable": false,
                "isSequence": false,
                "constraints": null,
                "isDeprecated": false
              },
              "value": 0
            },
            {
              "id": {"level": 3, "index": 10},
              "descriptor": {
                "description": "Arbitrary message from dev to controller",
                "id": {"level": 3, "index": 10},
                "name": "message",
                "typeName": "NcString",
                "isReadOnly": true,
                "isNullable": true,
                "isSequence": false,
                "constraints": null,
                "isDeprecated": false
              },
              "value": "Nothing to report"
            },
            {
              "id": {"level": 1, "index": 1},
              "descriptor": {
                "description": "Static value. All instances of the same class will have the same identity value",
                "id": {"level": 1, "index": 1},
                "name": "classId",
                "typeName": "NcClassId",
                "isReadOnly": true,
                "isNullable": false,
                "isSequence": false,
                "constraints": null,
                "isDeprecated": false
              },
              "value": [1, 3, 1]
            },
            {
              "id": {"level": 1, "index": 2},
              "descriptor": {
                "description": "Object identifier",
                "id": {"level": 1, "index": 2},
                "name": "oid",
                "typeName": "NcOid",
                "isReadOnly": true,
                "isNullable": false,
                "isSequence": false,
                "constraints": null,
                "isDeprecated": false
              },
              "value": 2
            },
            {
              "id": {"level": 1, "index": 3},
              "descriptor": {
                "description": "TRUE iff OID is hardwired into device",
                "id": {"level": 1, "index": 3},
                "name": "constantOid",
                "typeName": "NcBoolean",
                "isReadOnly": true,
                "isNullable": false,
                "isSequence": false,
                "constraints": null,
                "isDeprecated": false
              },
              "value": true
            },
            {
              "id": {"level": 1, "index": 4},
              "descriptor": {
                "description": "OID of containing block. Can only ever be null for the root block",
                "id": {"level": 1, "index": 4},
                "name": "owner",
                "typeName": "NcOid",
                "isReadOnly": true,
                "isNullable": true,
                "isSequence": false,
                "constraints": null,
                "isDeprecated": false
              },
              "value": 1
            },
            {
              "id": {"level": 1, "index": 5},
              "descriptor": {
                "description": "role of obj in containing block",
                "id": {"level": 1, "index": 5},
                "name": "role",
                "typeName": "NcString",
                "isReadOnly": true,
                "isNullable": false,
                "isSequence": false,
                "constraints": null,
                "isDeprecated": false
              },
              "value": "DeviceManager"
            },
            {
              "id": {"level": 1, "index": 6},
              "descriptor": {
                "description": "Scribble strip",
                "id": {"level": 1, "index": 6},
                "name": "userLabel",
                "typeName": "NcString",
                "isReadOnly": false,
                "isNullable": true,
                "isSequence": false,
                "constraints": null,
                "isDeprecated": false
              },
              "value": "Device manager"
            },
            {
              "id": {"level": 1, "index": 7},
              "descriptor": {
                "description": "Touchpoints to other contexts",
                "id": {"level": 1, "index": 7},
                "name": "touchpoints",
                "typeName": "NcTouchpoint",
                "isReadOnly": true,
                "isNullable": true,
                "isSequence": true,
                "constraints": null,
                "isDeprecated": false
              },
              "value": null
            },
            {
              "id": {"level": 1, "index": 8},
              "descriptor": {
                "description": "Runtime property constraints",
                "id": {"level": 1, "index": 8},
                "name": "runtimePropertyConstraints",
                "typeName": "NcPropertyConstraints",
                "isReadOnly": true,
                "isNullable": true,
                "isSequence": true,
                "constraints": null,
                "isDeprecated": false
              },
              "value": null
            }
          ],
          "isRebuildable": false
        },
        {
          "path": ["root", "ClassManager"],
          "dependencyPaths": [],
          "allowedMembersClasses": [],
          "values": [
            {
              "id": {"level": 3, "index": 1},
              "descriptor": {
                "description": "Descriptions of all control classes in the device (descriptors do not contain inherited elements)",
                "id": {"level": 3, "index": 1},
                "name": "controlClasses",
                "typeName": "NcClassDescriptor",
                "isReadOnly": true,
                "isNullable": false,
                "isSequence": true,
                "constraints": null,
                "isDeprecated": false
              },
              "value": [
                {
                  "description": "NcObject class descriptor",
                  "classId": [1],
                  "name": "NcObject",
                  "fixedRole": null,
                  "properties": [
                    {
                      "description": "Static value. All instances of the same class will have the same identity value",
                      "id": {"level": 1, "index": 1},
                      "name": "classId",
                      "typeName": "NcClassId",
                      "isReadOnly": true,
                      "isNullable": false,
                      "isSequence": false,
                      "constraints": null,
                      "isDeprecated": false
                    },
                    {
                      "description": "Object identifier",
                      "id": {"level": 1, "index": 2},
                      "name": "oid",
                      "typeName": "NcOid",
                      "isReadOnly": true,
                      "isNullable": false,
                      "isSequence": false,
                      "constraints": null,
                      "isDeprecated": false
                    },
                    {
                      "description": "TRUE iff OID is hardwired into device",
                      "id": {"level": 1, "index": 3},
                      "name": "constantOid",
                      "typeName": "NcBoolean",
                      "isReadOnly": true,
                      "isNullable": false,
                      "isSequence": false,
                      "constraints": null,
                      "isDeprecated": false
                    },
                    {
                      "description": "OID of containing block. Can only ever be null for the root block",
                      "id": {"level": 1, "index": 4},
                      "name": "owner",
                      "typeName": "NcOid",
                      "isReadOnly": true,
                      "isNullable": true,
                      "isSequence": false,
                      "constraints": null,
                      "isDeprecated": false
                    },
                    {
                      "description": "role of obj in containing block",
                      "id": {"level": 1, "index": 5},
                      "name": "role",
                      "typeName": "NcString",
                      "isReadOnly": true,
                      "isNullable": false,
                      "isSequence": false,
                      "constraints": null,
                      "isDeprecated": false
                    },
                    {
                      "description": "Scribble strip",
                      "id": {"level": 1, "index": 6},
                      "name": "userLabel",
                      "typeName": "NcString",
                      "isReadOnly": false,
                      "isNullable": true,
                      "isSequence": false,
                      "constraints": null,
                      "isDeprecated": false
                    },
                    {
                      "description": "Touchpoints to other contexts",
                      "id": {"level": 1, "index": 7},
                      "name": "touchpoints",
                      "typeName": "NcTouchpoint",
                      "isReadOnly": true,
                      "isNullable": true,
                      "isSequence": true,
                      "constraints": null,
                      "isDeprecated": false
                    },
                    {
                      "description": "Runtime property constraints",
                      "id": {"level": 1, "index": 8},
                      "name": "runtimePropertyConstraints",
                      "typeName": "NcPropertyConstraints",
                      "isReadOnly": true,
                      "isNullable": true,
                      "isSequence": true,
                      "constraints": null,
                      "isDeprecated": false
                    }
                  ],
                  "methods": [
                    {
                      "description": "Get property value",
                      "id": {"level": 1, "index": 1},
                      "name": "Get",
                      "resultDatatype": "NcMethodResultPropertyValue",
                      "parameters": [
                        {
                          "description": "Property id",
                          "name": "id",
                          "typeName": "NcPropertyId",
                          "isNullable": false,
                          "isSequence": false,
                          "constraints": null
                        }
                      ],
                      "isDeprecated": false
                    },
                    {
                      "description": "Set property value",
                      "id": {"level": 1, "index": 2},
                      "name": "Set",
                      "resultDatatype": "NcMethodResult",
                      "parameters": [
                        {
                          "description": "Property id",
                          "name": "id",
                          "typeName": "NcPropertyId",
                          "isNullable": false,
                          "isSequence": false,
                          "constraints": null
                        },
                        {
                          "description": "Property value",
                          "name": "value",
                          "typeName": null,
                          "isNullable": true,
                          "isSequence": false,
                          "constraints": null
                        }
                      ],
                      "isDeprecated": false
                    },
                    {
                      "description": "Get sequence item",
                      "id": {"level": 1, "index": 3},
                      "name": "GetSequenceItem",
                      "resultDatatype": "NcMethodResultPropertyValue",
                      "parameters": [
                        {
                          "description": "Property id",
                          "name": "id",
                          "typeName": "NcPropertyId",
                          "isNullable": false,
                          "isSequence": false,
                          "constraints": null
                        },
                        {
                          "description": "Index of item in the sequence",
                          "name": "index",
                          "typeName": "NcId",
                          "isNullable": false,
                          "isSequence": false,
                          "constraints": null
                        }
                      ],
                      "isDeprecated": false
                    },
                    {
                      "description": "Set sequence item value",
                      "id": {"level": 1, "index": 4},
                      "name": "SetSequenceItem",
                      "resultDatatype": "NcMethodResult",
                      "parameters": [
                        {
                          "description": "Property id",
                          "name": "id",
                          "typeName": "NcPropertyId",
                          "isNullable": false,
                          "isSequence": false,
                          "constraints": null
                        },
                        {
                          "description": "Index of item in the sequence",
                          "name": "index",
                          "typeName": "NcId",
                          "isNullable": false,
                          "isSequence": false,
                          "constraints": null
                        },
                        {
                          "description": "Value",
                          "name": "value",
                          "typeName": null,
                          "isNullable": true,
                          "isSequence": false,
                          "constraints": null
                        }
                      ],
                      "isDeprecated": false
                    },
                    {
                      "description": "Add item to sequence",
                      "id": {"level": 1, "index": 5},
                      "name": "AddSequenceItem",
                      "resultDatatype": "NcMethodResultId",
                      "parameters": [
                        {
                          "description": "Property id",
                          "name": "id",
                          "typeName": "NcPropertyId",
                          "isNullable": false,
                          "isSequence": false,
                          "constraints": null
                        },
                        {
                          "description": "Value",
                          "name": "value",
                          "typeName": null,
                          "isNullable": true,
                          "isSequence": false,
                          "constraints": null
                        }
                      ],
                      "isDeprecated": false
                    },
                    {
                      "description": "Delete sequence item",
                      "id": {"level": 1, "index": 6},
                      "name": "RemoveSequenceItem",
                      "resultDatatype": "NcMethodResult",
                      "parameters": [
                        {
                          "description": "Property id",
                          "name": "id",
                          "typeName": "NcPropertyId",
                          "isNullable": false,
                          "isSequence": false,
                          "constraints": null
                        },
                        {
                          "description": "Index of item in the sequence",
                          "name": "index",
                          "typeName": "NcId",
                          "isNullable": false,
                          "isSequence": false,
                          "constraints": null
                        }
                      ],
                      "isDeprecated": false
                    },
                    {
                      "description": "Get sequence length",
                      "id": {"level": 1, "index": 7},
                      "name": "GetSequenceLength",
                      "resultDatatype": "NcMethodResultLength",
                      "parameters": [
                        {
                          "description": "Property id",
                          "name": "id",
                          "typeName": "NcPropertyId",
                          "isNullable": false,
                          "isSequence": false,
                          "constraints": null
                        }
                      ],
                      "isDeprecated": false
                    }
                  ],
                  "events": [
                    {
                      "description": "Property changed event",
                      "id": {"level": 1, "index": 1},
                      "name": "PropertyChanged",
                      "eventDatatype": "NcPropertyChangedEventData",
                      "isDeprecated": false
                    }
                  ]
                },
                {
                  "description": "NcBlock class descriptor",
                  "classId": [1, 1],
                  "name": "NcBlock",
                  "fixedRole": null,
                  "properties": [
                    {
                      "description": "TRUE if block is functional",
                      "id": {"level": 2, "index": 1},
                      "name": "enabled",
                      "typeName": "NcBoolean",
                      "isReadOnly": true,
                      "isNullable": false,
                      "isSequence": false,
                      "constraints": null,
                      "isDeprecated": false
                    },
                    {
                      "description": "Descriptors of this block's members",
                      "id": {"level": 2, "index": 2},
                      "name": "members",
                      "typeName": "NcBlockMemberDescriptor",
                      "isReadOnly": true,
                      "isNullable": false,
                      "isSequence": true,
                      "constraints": null,
                      "isDeprecated": false
                    }
                  ],
                  "methods": [
                    {
                      "description": "Gets descriptors of members of the block",
                      "id": {"level": 2, "index": 1},
                      "name": "GetMemberDescriptors",
                      "resultDatatype": "NcMethodResultBlockMemberDescriptors",
                      "parameters": [
                        {
                          "description": "If recurse is set to true, nested members can be retrieved",
                          "name": "recurse",
                          "typeName": "NcBoolean",
                          "isNullable": false,
                          "isSequence": false,
                          "constraints": null
                        }
                      ],
                      "isDeprecated": false
                    },
                    {
                      "description": "Finds member(s) by path",
                      "id": {"level": 2, "index": 2},
                      "name": "FindMembersByPath",
                      "resultDatatype": "NcMethodResultBlockMemberDescriptors",
                      "parameters": [
                        {
                          "description": "Relative path to search for (MUST not include the role of the block targeted by oid)",
                          "name": "path",
                          "typeName": "NcRolePath",
                          "isNullable": false,
                          "isSequence": false,
                          "constraints": null
                        }
                      ],
                      "isDeprecated": false
                    },
                    {
                      "description": "Finds members with given role name or fragment",
                      "id": {"level": 2, "index": 3},
                      "name": "FindMembersByRole",
                      "resultDatatype": "NcMethodResultBlockMemberDescriptors",
                      "parameters": [
                        {
                          "description": "Role text to search for",
                          "name": "role",
                          "typeName": "NcString",
                          "isNullable": false,
                          "isSequence": false,
                          "constraints": null
                        },
                        {
                          "description": "Signals if the comparison should be case sensitive",
                          "name": "caseSensitive",
                          "typeName": "NcBoolean",
                          "isNullable": false,
                          "isSequence": false,
                          "constraints": null
                        },
                        {
                          "description": "TRUE to only return exact matches",
                          "name": "matchWholeString",
                          "typeName": "NcBoolean",
                          "isNullable": false,
                          "isSequence": false,
                          "constraints": null
                        },
                        {
                          "description": "TRUE to search nested blocks",
                          "name": "recurse",
                          "typeName": "NcBoolean",
                          "isNullable": false,
                          "isSequence": false,
                          "constraints": null
                        }
                      ],
                      "isDeprecated": false
                    },
                    {
                      "description": "Finds members with given class id",
                      "id": {"level": 2, "index": 4},
                      "name": "FindMembersByClassId",
                      "resultDatatype": "NcMethodResultBlockMemberDescriptors",
                      "parameters": [
                        {
                          "description": "Class id to search for",
                          "name": "classId",
                          "typeName": "NcClassId",
                          "isNullable": false,
                          "isSequence": false,
                          "constraints": null
                        },
                        {
                          "description": "If TRUE it will also include derived class descriptors",
                          "name": "includeDerived",
                          "typeName": "NcBoolean",
                          "isNullable": false,
                          "isSequence": false,
                          "constraints": null
                        },
                        {
                          "description": "TRUE to search nested blocks",
                          "name": "recurse",
                          "typeName": "NcBoolean",
                          "isNullable": false,
                          "isSequence": false,
                          "constraints": null
                        }
                      ],
                      "isDeprecated": false
                    }
                  ],
                  "events": []
                }
              ]
            },
            {
              "id": {"level": 3, "index": 2},
              "descriptor": {
                "description": "Descriptions of all data types in the device (descriptors do not contain inherited elements)",
                "id": {"level": 3, "index": 2},
                "name": "datatypes",
                "typeName": "NcDatatypeDescriptor",
                "isReadOnly": true,
                "isNullable": false,
                "isSequence": true,
                "constraints": null,
                "isDeprecated": false
              },
              "value": [
                {
                  "description": "Boolean primitive type",
                  "name": "NcBoolean",
                  "type": 0,
                  "constraints": null
                },
                {
                  "description": "short",
                  "name": "NcInt16",
                  "type": 0,
                  "constraints": null
                },
                {
                  "description": "long",
                  "name": "NcInt32",
                  "type": 0,
                  "constraints": null
                },
                {
                  "description": "longlong",
                  "name": "NcInt64",
                  "type": 0,
                  "constraints": null
                },
                {
                  "description": "unsignedshort",
                  "name": "NcUint16",
                  "type": 0,
                  "constraints": null
                },
                {
                  "description": "unsignedlong",
                  "name": "NcUint32",
                  "type": 0,
                  "constraints": null
                },
                {
                  "description": "unsignedlonglong",
                  "name": "NcUint64",
                  "type": 0,
                  "constraints": null
                },
                {
                  "description": "unrestrictedfloat",
                  "name": "NcFloat32",
                  "type": 0,
                  "constraints": null
                },
                {
                  "description": "unrestricteddouble",
                  "name": "NcFloat64",
                  "type": 0,
                  "constraints": null
                },
                {
                  "description": "UTF-8 string",
                  "name": "NcString",
                  "type": 0,
                  "constraints": null
                },
                {
                  "description": "Sequence of class ID fields.",
                  "name": "NcClassId",
                  "type": 1,
                  "constraints": null,
                  "parentType": "NcInt32",
                  "isSequence": true
                }
              ]
            },
            {
              "id": {"level": 1, "index": 1},
              "descriptor": {
                "description": "Static value. All instances of the same class will have the same identity value",
                "id": {"level": 1, "index": 1},
                "name": "classId",
                "typeName": "NcClassId",
                "isReadOnly": true,
                "isNullable": false,
                "isSequence": false,
                "constraints": null,
                "isDeprecated": false
              },
              "value": [1, 3, 2]
            },
            {
              "id": {"level": 1, "index": 2},
              "descriptor": {
                "description": "Object identifier",
                "id": {"level": 1, "index": 2},
                "name": "oid",
                "typeName": "NcOid",
                "isReadOnly": true,
                "isNullable": false,
                "isSequence": false,
                "constraints": null,
                "isDeprecated": false
              },
              "value": 3
            },
            {
              "id": {"level": 1, "index": 3},
              "descriptor": {
                "description": "TRUE iff OID is hardwired into device",
                "id": {"level": 1, "index": 3},
                "name": "constantOid",
                "typeName": "NcBoolean",
                "isReadOnly": true,
                "isNullable": false,
                "isSequence": false,
                "constraints": null,
                "isDeprecated": false
              },
              "value": true
            },
            {
              "id": {"level": 1, "index": 4},
              "descriptor": {
                "description": "OID of containing block. Can only ever be null for the root block",
                "id": {"level": 1, "index": 4},
                "name": "owner",
                "typeName": "NcOid",
                "isReadOnly": true,
                "isNullable": true,
                "isSequence": false,
                "constraints": null,
                "isDeprecated": false
              },
              "value": 1
            },
            {
              "id": {"level": 1, "index": 5},
              "descriptor": {
                "description": "role of obj in containing block",
                "id": {"level": 1, "index": 5},
                "name": "role",
                "typeName": "NcString",
                "isReadOnly": true,
                "isNullable": false,
                "isSequence": false,
                "constraints": null,
                "isDeprecated": false
              },
              "value": "ClassManager"
            },
            {
              "id": {"level": 1, "index": 6},
              "descriptor": {
                "description": "Scribble strip",
                "id": {"level": 1, "index": 6},
                "name": "userLabel",
                "typeName": "NcString",
                "isReadOnly": false,
                "isNullable": true,
                "isSequence": false,
                "constraints": null,
                "isDeprecated": false
              },
              "value": "Class manager"
            },
            {
              "id": {"level": 1, "index": 7},
              "descriptor": {
                "description": "Touchpoints to other contexts",
                "id": {"level": 1, "index": 7},
                "name": "touchpoints",
                "typeName": "NcTouchpoint",
                "isReadOnly": true,
                "isNullable": true,
                "isSequence": true,
                "constraints": null,
                "isDeprecated": false
              },
              "value": null
            },
            {
              "id": {"level": 1, "index": 8},
              "descriptor": {
                "description": "Runtime property constraints",
                "id": {"level": 1, "index": 8},
                "name": "runtimePropertyConstraints",
                "typeName": "NcPropertyConstraints",
                "isReadOnly": true,
                "isNullable": true,
                "isSequence": true,
                "constraints": null,
                "isDeprecated": false
              },
              "value": null
            }
          ],
          "isRebuildable": false
        },
        {
          "path": ["root", "receivers"],
          "dependencyPaths": [],
          "allowedMembersClasses": [],
          "values": [
            {
              "id": {"level": 2, "index": 1},
              "descriptor": {
                "description": "TRUE if block is functional",
                "id": {"level": 2, "index": 1},
                "name": "enabled",
                "typeName": "NcBoolean",
                "isReadOnly": true,
                "isNullable": false,
                "isSequence": false,
                "constraints": null,
                "isDeprecated": false
              },
              "value": true
            },
            {
              "id": {"level": 2, "index": 2},
              "descriptor": {
                "description": "Descriptors of this block's members",
                "id": {"level": 2, "index": 2},
                "name": "members",
                "typeName": "NcBlockMemberDescriptor",
                "isReadOnly": true,
                "isNullable": false,
                "isSequence": true,
                "constraints": null,
                "isDeprecated": false
              },
              "value": [
                {
                  "description": "Receiver monitor worker",
                  "role": "monitor-01",
                  "oid": 10,
                  "constantOid": true,
                  "classId": [1, 2, 2, 1],
                  "userLabel": "Receiver monitor 01",
                  "owner": 9
                }
              ]
            },
            {
              "id": {"level": 1, "index": 1},
              "descriptor": {
                "description": "Static value. All instances of the same class will have the same identity value",
                "id": {"level": 1, "index": 1},
                "name": "classId",
                "typeName": "NcClassId",
                "isReadOnly": true,
                "isNullable": false,
                "isSequence": false,
                "constraints": null,
                "isDeprecated": false
              },
              "value": [1, 1]
            },
            {
              "id": {"level": 1, "index": 2},
              "descriptor": {
                "description": "Object identifier",
                "id": {"level": 1, "index": 2},
                "name": "oid",
                "typeName": "NcOid",
                "isReadOnly": true,
                "isNullable": false,
                "isSequence": false,
                "constraints": null,
                "isDeprecated": false
              },
              "value": 9
            },
            {
              "id": {"level": 1, "index": 3},
              "descriptor": {
                "description": "TRUE iff OID is hardwired into device",
                "id": {"level": 1, "index": 3},
                "name": "constantOid",
                "typeName": "NcBoolean",
                "isReadOnly": true,
                "isNullable": false,
                "isSequence": false,
                "constraints": null,
                "isDeprecated": false
              },
              "value": true
            },
            {
              "id": {"level": 1, "index": 4},
              "descriptor": {
                "description": "OID of containing block. Can only ever be null for the root block",
                "id": {"level": 1, "index": 4},
                "name": "owner",
                "typeName": "NcOid",
                "isReadOnly": true,
                "isNullable": true,
                "isSequence": false,
                "constraints": null,
                "isDeprecated": false
              },
              "value": 1
            },
            {
              "id": {"level": 1, "index": 5},
              "descriptor": {
                "description": "role of obj in containing block",
                "id": {"level": 1, "index": 5},
                "name": "role",
                "typeName": "NcString",
                "isReadOnly": true,
                "isNullable": false,
                "isSequence": false,
                "constraints": null,
                "isDeprecated": false
              },
              "value": "receivers"
            },
            {
              "id": {"level": 1, "index": 6},
              "descriptor": {
                "description": "Scribble strip",
                "id": {"level": 1, "index": 6},
                "name": "userLabel",
                "typeName": "NcString",
                "isReadOnly": false,
                "isNullable": true,
                "isSequence": false,
                "constraints": null,
                "isDeprecated": false
              },
              "value": "Receivers"
            },
            {
              "id": {"level": 1, "index": 7},
              "descriptor": {
                "description": "Touchpoints to other contexts",
                "id": {"level": 1, "index": 7},
                "name": "touchpoints",
                "typeName": "NcTouchpoint",
                "isReadOnly": true,
                "isNullable": true,
                "isSequence": true,
                "constraints": null,
                "isDeprecated": false
              },
              "value": null
            },
            {
              "id": {"level": 1, "index": 8},
              "descriptor": {
                "description": "Runtime property constraints",
                "id": {"level": 1, "index": 8},
                "name": "runtimePropertyConstraints",
                "typeName": "NcPropertyConstraints",
                "isReadOnly": true,
                "isNullable": true,
                "isSequence": true,
                "constraints": null,
                "isDeprecated": false
              },
              "value": null
            }
          ],
          "isRebuildable": false
        },
        {
          "path": ["root", "receivers", "monitor-01"],
          "dependencyPaths": [],
          "allowedMembersClasses": [],
          "values": [
            {
              "id": {"level": 4, "index": 1},
              "descriptor": {
                "description": "Link status property",
                "id": {"level": 4, "index": 1},
                "name": "linkStatus",
                "typeName": "NcLinkStatus",
                "isReadOnly": true,
                "isNullable": false,
                "isSequence": false,
                "constraints": null,
                "isDeprecated": false
              },
              "value": 1
            },
            {
              "id": {"level": 4, "index": 2},
              "descriptor": {
                "description": "Link status message property",
                "id": {"level": 4, "index": 2},
                "name": "linkStatusMessage",
                "typeName": "NcString",
                "isReadOnly": true,
                "isNullable": true,
                "isSequence": false,
                "constraints": null,
                "isDeprecated": false
              },
              "value": null
            },
            {
              "id": {"level": 4, "index": 3},
              "descriptor": {
                "description": "Link status transition counter property",
                "id": {"level": 4, "index": 3},
                "name": "linkStatusTransitionCounter",
                "typeName": "NcUint64",
                "isReadOnly": true,
                "isNullable": false,
                "isSequence": false,
                "constraints": null,
                "isDeprecated": false
              },
              "value": 0
            },
            {
              "id": {"level": 4, "index": 4},
              "descriptor": {
                "description": "Connection status property",
                "id": {"level": 4, "index": 4},
                "name": "connectionStatus",
                "typeName": "NcConnectionStatus",
                "isReadOnly": true,
                "isNullable": false,
                "isSequence": false,
                "constraints": null,
                "isDeprecated": false
              },
              "value": 0
            },
            {
              "id": {"level": 4, "index": 5},
              "descriptor": {
                "description": "Connection status message property",
                "id": {"level": 4, "index": 5},
                "name": "connectionStatusMessage",
                "typeName": "NcString",
                "isReadOnly": true,
                "isNullable": true,
                "isSequence": false,
                "constraints": null,
                "isDeprecated": false
              },
              "value": null
            },
            {
              "id": {"level": 4, "index": 6},
              "descriptor": {
                "description": "Connection status transition counter property",
                "id": {"level": 4, "index": 6},
                "name": "connectionStatusTransitionCounter",
                "typeName": "NcUint64",
                "isReadOnly": true,
                "isNullable": false,
                "isSequence": false,
                "constraints": null,
                "isDeprecated": false
              },
              "value": 0
            },
            {
              "id": {"level": 4, "index": 7},
              "descriptor": {
                "description": "External synchronization status property",
                "id": {"level": 4, "index": 7},
                "name": "externalSynchronizationStatus",
                "typeName": "NcSynchronizationStatus",
                "isReadOnly": true,
                "isNullable": false,
                "isSequence": false,
                "constraints": null,
                "isDeprecated": false
              },
              "value": 1
            },
            {
              "id": {"level": 4, "index": 8},
              "descriptor": {
                "description": "External synchronization status message property",
                "id": {"level": 4, "index": 8},
                "name": "externalSynchronizationStatusMessage",
                "typeName": "NcString",
                "isReadOnly": true,
                "isNullable": true,
                "isSequence": false,
                "constraints": null,
                "isDeprecated": false
              },
              "value": null
            },
            {
              "id": {"level": 4, "index": 9},
              "descriptor": {
                "description": "External synchronization status transition counter property",
                "id": {"level": 4, "index": 9},
                "name": "externalSynchronizationStatusTransitionCounter",
                "typeName": "NcUint64",
                "isReadOnly": true,
                "isNullable": false,
                "isSequence": false,
                "constraints": null,
                "isDeprecated": false
              },
              "value": 0
            },
            {
              "id": {"level": 4, "index": 10},
              "descriptor": {
                "description": "Synchronization source id property",
                "id": {"level": 4, "index": 10},
                "name": "synchronizationSourceId",
                "typeName": "NcString",
                "isReadOnly": true,
                "isNullable": true,
                "isSequence": false,
                "constraints": null,
                "isDeprecated": false
              },
              "value": "00:0c:ec:ff:fe:0a:2b:a1 on NIC1"
            },
            {
              "id": {"level": 4, "index": 11},
              "descriptor": {
                "description": "Stream status property",
                "id": {"level": 4, "index": 11},
                "name": "streamStatus",
                "typeName": "NcStreamStatus",
                "isReadOnly": true,
                "isNullable": false,
                "isSequence": false,
                "constraints": null,
                "isDeprecated": false
              },
              "value": 0
            },
            {
              "id": {"level": 4, "index": 12},
              "descriptor": {
                "description": "Stream status message property",
                "id": {"level": 4, "index": 12},
                "name": "streamStatusMessage",
                "typeName": "NcString",
                "isReadOnly": true,
                "isNullable": true,
                "isSequence": false,
                "constraints": null,
                "isDeprecated": false
              },
              "value": null
            },
            {
              "id": {"level": 4, "index": 13},
              "descriptor": {
                "description": "Stream status transition counter property",
                "id": {"level": 4, "index": 13},
                "name": "streamStatusTransitionCounter",
                "typeName": "NcUint64",
                "isReadOnly": true,
                "isNullable": false,
                "isSequence": false,
                "constraints": null,
                "isDeprecated": false
              },
              "value": 0
            },
            {
              "id": {"level": 4, "index": 14},
              "descriptor": {
                "description": "Automatic reset counters and status messages property (default: true)",
                "id": {"level": 4, "index": 14},
                "name": "autoResetCountersAndMessages",
                "typeName": "NcBoolean",
                "isReadOnly": false,
                "isNullable": false,
                "isSequence": false,
                "constraints": null,
                "isDeprecated": false
              },
              "value": true
            },
            {
              "id": {"level": 3, "index": 1},
              "descriptor": {
                "description": "Overall status property",
                "id": {"level": 3, "index": 1},
                "name": "overallStatus",
                "typeName": "NcOverallStatus",
                "isReadOnly": true,
                "isNullable": false,
                "isSequence": false,
                "constraints": null,
                "isDeprecated": false
              },
              "value": 0
            },
            {
              "id": {"level": 3, "index": 2},
              "descriptor": {
                "description": "Overall status message property",
                "id": {"level": 3, "index": 2},
                "name": "overallStatusMessage",
                "typeName": "NcString",
                "isReadOnly": true,
                "isNullable": true,
                "isSequence": false,
                "constraints": null,
                "isDeprecated": false
              },
              "value": null
            },
            {
              "id": {"level": 3, "index": 3},
              "descriptor": {
                "description": "Status reporting delay property (in seconds, default is 3s and 0 means no delay)",
                "id": {"level": 3, "index": 3},
                "name": "statusReportingDelay",
                "typeName": "NcUint32",
                "isReadOnly": false,
                "isNullable": false,
                "isSequence": false,
                "constraints": null,
                "isDeprecated": false
              },
              "value": 3
            },
            {
              "id": {"level": 2, "index": 1},
              "descriptor": {
                "description": "TRUE iff worker is enabled",
                "id": {"level": 2, "index": 1},
                "name": "enabled",
                "typeName": "NcBoolean",
                "isReadOnly": false,
                "isNullable": false,
                "isSequence": false,
                "constraints": null,
                "isDeprecated": false
              },
              "value": true
            },
            {
              "id": {"level": 1, "index": 1},
              "descriptor": {
                "description": "Static value. All instances of the same class will have the same identity value",
                "id": {"level": 1, "index": 1},
                "name": "classId",
                "typeName": "NcClassId",
                "isReadOnly": true,
                "isNullable": false,
                "isSequence": false,
                "constraints": null,
                "isDeprecated": false
              },
              "value": [1, 2, 2, 1]
            },
            {
              "id": {"level": 1, "index": 2},
              "descriptor": {
                "description": "Object identifier",
                "id": {"level": 1, "index": 2},
                "name": "oid",
                "typeName": "NcOid",
                "isReadOnly": true,
                "isNullable": false,
                "isSequence": false,
                "constraints": null,
                "isDeprecated": false
              },
              "value": 10
            },
            {
              "id": {"level": 1, "index": 3},
              "descriptor": {
                "description": "TRUE iff OID is hardwired into device",
                "id": {"level": 1, "index": 3},
                "name": "constantOid",
                "typeName": "NcBoolean",
                "isReadOnly": true,
                "isNullable": false,
                "isSequence": false,
                "constraints": null,
                "isDeprecated": false
              },
              "value": true
            },
            {
              "id": {"level": 1, "index": 4},
              "descriptor": {
                "description": "OID of containing block. Can only ever be null for the root block",
                "id": {"level": 1, "index": 4},
                "name": "owner",
                "typeName": "NcOid",
                "isReadOnly": true,
                "isNullable": true,
                "isSequence": false,
                "constraints": null,
                "isDeprecated": false
              },
              "value": 9
            },
            {
              "id": {"level": 1, "index": 5},
              "descriptor": {
                "description": "role of obj in containing block",
                "id": {"level": 1, "index": 5},
                "name": "role",
                "typeName": "NcString",
                "isReadOnly": true,
                "isNullable": false,
                "isSequence": false,
                "constraints": null,
                "isDeprecated": false
              },
              "value": "monitor-01"
            },
            {
              "id": {"level": 1, "index": 6},
              "descriptor": {
                "description": "Scribble strip",
                "id": {"level": 1, "index": 6},
                "name": "userLabel",
                "typeName": "NcString",
                "isReadOnly": false,
                "isNullable": true,
                "isSequence": false,
                "constraints": null,
                "isDeprecated": false
              },
              "value": "Receiver monitor 01"
            },
            {
              "id": {"level": 1, "index": 7},
              "descriptor": {
                "description": "Touchpoints to other contexts",
                "id": {"level": 1, "index": 7},
                "name": "touchpoints",
                "typeName": "NcTouchpoint",
                "isReadOnly": true,
                "isNullable": true,
                "isSequence": true,
                "constraints": null,
                "isDeprecated": false
              },
              "value": [
                {
                  "contextNamespace": "x-nmos",
                  "resource": {
                    "resourceType": "receiver",
                    "id"          : "18eae0e9-dcf4-40ff-88a3-cb553993d1b8"
                  }
                }
              ]
            },
            {
              "id": {"level": 1, "index": 8},
              "descriptor": {
                "description": "Runtime property constraints",
                "id": {"level": 1, "index": 8},
                "name": "runtimePropertyConstraints",
                "typeName": "NcPropertyConstraints",
                "isReadOnly": true,
                "isNullable": true,
                "isSequence": true,
                "constraints": null,
                "isDeprecated": false
              },
              "value": null
            }
          ],
          "isRebuildable": false
        },
        {
          "path": ["root", "senders"],
          "dependencyPaths": [],
          "allowedMembersClasses": [],
          "values": [
            {
              "id": {"level": 2, "index": 1},
              "descriptor": {
                "description": "TRUE if block is functional",
                "id": {"level": 2, "index": 1},
                "name": "enabled",
                "typeName": "NcBoolean",
                "isReadOnly": true,
                "isNullable": false,
                "isSequence": false,
                "constraints": null,
                "isDeprecated": false
              },
              "value": true
            },
            {
              "id": {"level": 2, "index": 2},
              "descriptor": {
                "description": "Descriptors of this block's members",
                "id": {"level": 2, "index": 2},
                "name": "members",
                "typeName": "NcBlockMemberDescriptor",
                "isReadOnly": true,
                "isNullable": false,
                "isSequence": true,
                "constraints": null,
                "isDeprecated": false
              },
              "value": [
                {
                  "description": "Sender monitor worker",
                  "role": "monitor-01",
                  "oid": 12,
                  "constantOid": true,
                  "classId": [1, 2, 2, 2],
                  "userLabel": "Sender monitor 01",
                  "owner": 11
                }
              ]
            },
            {
              "id": {"level": 1, "index": 1},
              "descriptor": {
                "description": "Static value. All instances of the same class will have the same identity value",
                "id": {"level": 1, "index": 1},
                "name": "classId",
                "typeName": "NcClassId",
                "isReadOnly": true,
                "isNullable": false,
                "isSequence": false,
                "constraints": null,
                "isDeprecated": false
              },
              "value": [1, 1]
            },
            {
              "id": {"level": 1, "index": 2},
              "descriptor": {
                "description": "Object identifier",
                "id": {"level": 1, "index": 2},
                "name": "oid",
                "typeName": "NcOid",
                "isReadOnly": true,
                "isNullable": false,
                "isSequence": false,
                "constraints": null,
                "isDeprecated": false
              },
              "value": 11
            },
            {
              "id": {"level": 1, "index": 3},
              "descriptor": {
                "description": "TRUE iff OID is hardwired into device",
                "id": {"level": 1, "index": 3},
                "name": "constantOid",
                "typeName": "NcBoolean",
                "isReadOnly": true,
                "isNullable": false,
                "isSequence": false,
                "constraints": null,
                "isDeprecated": false
              },
              "value": true
            },
            {
              "id": {"level": 1, "index": 4},
              "descriptor": {
                "description": "OID of containing block. Can only ever be null for the root block",
                "id": {"level": 1, "index": 4},
                "name": "owner",
                "typeName": "NcOid",
                "isReadOnly": true,
                "isNullable": true,
                "isSequence": false,
                "constraints": null,
                "isDeprecated": false
              },
              "value": 1
            },
            {
              "id": {"level": 1, "index": 5},
              "descriptor": {
                "description": "role of obj in containing block",
                "id": {"level": 1, "index": 5},
                "name": "role",
                "typeName": "NcString",
                "isReadOnly": true,
                "isNullable": false,
                "isSequence": false,
                "constraints": null,
                "isDeprecated": false
              },
              "value": "senders"
            },
            {
              "id": {"level": 1, "index": 6},
              "descriptor": {
                "description": "Scribble strip",
                "id": {"level": 1, "index": 6},
                "name": "userLabel",
                "typeName": "NcString",
                "isReadOnly": false,
                "isNullable": true,
                "isSequence": false,
                "constraints": null,
                "isDeprecated": false
              },
              "value": "Senders"
            },
            {
              "id": {"level": 1, "index": 7},
              "descriptor": {
                "description": "Touchpoints to other contexts",
                "id": {"level": 1, "index": 7},
                "name": "touchpoints",
                "typeName": "NcTouchpoint",
                "isReadOnly": true,
                "isNullable": true,
                "isSequence": true,
                "constraints": null,
                "isDeprecated": false
              },
              "value": null
            },
            {
              "id": {"level": 1, "index": 8},
              "descriptor": {
                "description": "Runtime property constraints",
                "id": {"level": 1, "index": 8},
                "name": "runtimePropertyConstraints",
                "typeName": "NcPropertyConstraints",
                "isReadOnly": true,
                "isNullable": true,
                "isSequence": true,
                "constraints": null,
                "isDeprecated": false
              },
              "value": null
            }
          ],
          "isRebuildable": false
        },
        {
          "path": ["root", "senders", "monitor-01"],
          "dependencyPaths": [],
          "allowedMembersClasses": [],
          "values": [
            {
              "id": {"level": 4, "index": 1},
              "descriptor": {
                "description": "Link status property",
                "id": {"level": 4, "index": 1},
                "name": "linkStatus",
                "typeName": "NcLinkStatus",
                "isReadOnly": true,
                "isNullable": false,
                "isSequence": false,
                "constraints": null,
                "isDeprecated": false
              },
              "value": 1
            },
            {
              "id": {"level": 4, "index": 2},
              "descriptor": {
                "description": "Link status message property",
                "id": {"level": 4, "index": 2},
                "name": "linkStatusMessage",
                "typeName": "NcString",
                "isReadOnly": true,
                "isNullable": true,
                "isSequence": false,
                "constraints": null,
                "isDeprecated": false
              },
              "value": null
            },
            {
              "id": {"level": 4, "index": 3},
              "descriptor": {
                "description": "Link status transition counter property",
                "id": {"level": 4, "index": 3},
                "name": "linkStatusTransitionCounter",
                "typeName": "NcUint64",
                "isReadOnly": true,
                "isNullable": false,
                "isSequence": false,
                "constraints": null,
                "isDeprecated": false
              },
              "value": 0
            },
            {
              "id": {"level": 4, "index": 4},
              "descriptor": {
                "description": "Transmission status property",
                "id": {"level": 4, "index": 4},
                "name": "transmissionStatus",
                "typeName": "NcTransmissionStatus",
                "isReadOnly": true,
                "isNullable": false,
                "isSequence": false,
                "constraints": null,
                "isDeprecated": false
              },
              "value": 1
            },
            {
              "id": {"level": 4, "index": 5},
              "descriptor": {
                "description": "Transmission status message property",
                "id": {"level": 4, "index": 5},
                "name": "transmissionStatusMessage",
                "typeName": "NcString",
                "isReadOnly": true,
                "isNullable": true,
                "isSequence": false,
                "constraints": null,
                "isDeprecated": false
              },
              "value": null
            },
            {
              "id": {"level": 4, "index": 6},
              "descriptor": {
                "description": "Transmission status transition counter property",
                "id": {"level": 4, "index": 6},
                "name": "transmissionStatusTransitionCounter",
                "typeName": "NcUint64",
                "isReadOnly": true,
                "isNullable": false,
                "isSequence": false,
                "constraints": null,
                "isDeprecated": false
              },
              "value": 0
            },
            {
              "id": {"level": 4, "index": 7},
              "descriptor": {
                "description": "External synchronization status property",
                "id": {"level": 4, "index": 7},
                "name": "externalSynchronizationStatus",
                "typeName": "NcSynchronizationStatus",
                "isReadOnly": true,
                "isNullable": false,
                "isSequence": false,
                "constraints": null,
                "isDeprecated": false
              },
              "value": 1
            },
            {
              "id": {"level": 4, "index": 8},
              "descriptor": {
                "description": "External synchronization status message property",
                "id": {"level": 4, "index": 8},
                "name": "externalSynchronizationStatusMessage",
                "typeName": "NcString",
                "isReadOnly": true,
                "isNullable": true,
                "isSequence": false,
                "constraints": null,
                "isDeprecated": false
              },
              "value": null
            },
            {
              "id": {"level": 4, "index": 9},
              "descriptor": {
                "description": "External synchronization status transition counter property",
                "id": {"level": 4, "index": 9},
                "name": "externalSynchronizationStatusTransitionCounter",
                "typeName": "NcUint64",
                "isReadOnly": true,
                "isNullable": false,
                "isSequence": false,
                "constraints": null,
                "isDeprecated": false
              },
              "value": 0
            },
            {
              "id": {"level": 4, "index": 10},
              "descriptor": {
                "description": "Synchronization source id property",
                "id": {"level": 4, "index": 10},
                "name": "synchronizationSourceId",
                "typeName": "NcString",
                "isReadOnly": true,
                "isNullable": true,
                "isSequence": false,
                "constraints": null,
                "isDeprecated": false
              },
              "value": "00:0c:ec:ff:fe:0a:2b:a1 on NIC1"
            },
            {
              "id": {"level": 4, "index": 11},
              "descriptor": {
                "description": "Essence status property",
                "id": {"level": 4, "index": 11},
                "name": "essenceStatus",
                "typeName": "NcEssenceStatus",
                "isReadOnly": true,
                "isNullable": false,
                "isSequence": false,
                "constraints": null,
                "isDeprecated": false
              },
              "value": 1
            },
            {
              "id": {"level": 4, "index": 12},
              "descriptor": {
                "description": "Essence status message property",
                "id": {"level": 4, "index": 12},
                "name": "essenceStatusMessage",
                "typeName": "NcString",
                "isReadOnly": true,
                "isNullable": true,
                "isSequence": false,
                "constraints": null,
                "isDeprecated": false
              },
              "value": null
            },
            {
              "id": {"level": 4, "index": 13},
              "descriptor": {
                "description": "Essence status transition counter property",
                "id": {"level": 4, "index": 13},
                "name": "essenceStatusTransitionCounter",
                "typeName": "NcUint64",
                "isReadOnly": true,
                "isNullable": false,
                "isSequence": false,
                "constraints": null,
                "isDeprecated": false
              },
              "value": 0
            },
            {
              "id": {"level": 4, "index": 14},
              "descriptor": {
                "description": "Automatic reset counters and status messages property (default: true)",
                "id": {"level": 4, "index": 14},
                "name": "autoResetCountersAndMessages",
                "typeName": "NcBoolean",
                "isReadOnly": false,
                "isNullable": false,
                "isSequence": false,
                "constraints": null,
                "isDeprecated": false
              },
              "value": true
            },
            {
              "id": {"level": 3, "index": 1},
              "descriptor": {
                "description": "Overall status property",
                "id": {"level": 3, "index": 1},
                "name": "overallStatus",
                "typeName": "NcOverallStatus",
                "isReadOnly": true,
                "isNullable": false,
                "isSequence": false,
                "constraints": null,
                "isDeprecated": false
              },
              "value": 1
            },
            {
              "id": {"level": 3, "index": 2},
              "descriptor": {
                "description": "Overall status message property",
                "id": {"level": 3, "index": 2},
                "name": "overallStatusMessage",
                "typeName": "NcString",
                "isReadOnly": true,
                "isNullable": true,
                "isSequence": false,
                "constraints": null,
                "isDeprecated": false
              },
              "value": null
            },
            {
              "id": {"level": 3, "index": 3},
              "descriptor": {
                "description": "Status reporting delay property (in seconds, default is 3s and 0 means no delay)",
                "id": {"level": 3, "index": 3},
                "name": "statusReportingDelay",
                "typeName": "NcUint32",
                "isReadOnly": false,
                "isNullable": false,
                "isSequence": false,
                "constraints": null,
                "isDeprecated": false
              },
              "value": 3
            },
            {
              "id": {"level": 2, "index": 1},
              "descriptor": {
                "description": "TRUE iff worker is enabled",
                "id": {"level": 2, "index": 1},
                "name": "enabled",
                "typeName": "NcBoolean",
                "isReadOnly": false,
                "isNullable": false,
                "isSequence": false,
                "constraints": null,
                "isDeprecated": false
              },
              "value": true
            },
            {
              "id": {"level": 1, "index": 1},
              "descriptor": {
                "description": "Static value. All instances of the same class will have the same identity value",
                "id": {"level": 1, "index": 1},
                "name": "classId",
                "typeName": "NcClassId",
                "isReadOnly": true,
                "isNullable": false,
                "isSequence": false,
                "constraints": null,
                "isDeprecated": false
              },
              "value": [1, 2, 2, 2]
            },
            {
              "id": {"level": 1, "index": 2},
              "descriptor": {
                "description": "Object identifier",
                "id": {"level": 1, "index": 2},
                "name": "oid",
                "typeName": "NcOid",
                "isReadOnly": true,
                "isNullable": false,
                "isSequence": false,
                "constraints": null,
                "isDeprecated": false
              },
              "value": 12
            },
            {
              "id": {"level": 1, "index": 3},
              "descriptor": {
                "description": "TRUE iff OID is hardwired into device",
                "id": {"level": 1, "index": 3},
                "name": "constantOid",
                "typeName": "NcBoolean",
                "isReadOnly": true,
                "isNullable": false,
                "isSequence": false,
                "constraints": null,
                "isDeprecated": false
              },
              "value": true
            },
            {
              "id": {"level": 1, "index": 4},
              "descriptor": {
                "description": "OID of containing block. Can only ever be null for the root block",
                "id": {"level": 1, "index": 4},
                "name": "owner",
                "typeName": "NcOid",
                "isReadOnly": true,
                "isNullable": true,
                "isSequence": false,
                "constraints": null,
                "isDeprecated": false
              },
              "value": 11
            },
            {
              "id": {"level": 1, "index": 5},
              "descriptor": {
                "description": "role of obj in containing block",
                "id": {"level": 1, "index": 5},
                "name": "role",
                "typeName": "NcString",
                "isReadOnly": true,
                "isNullable": false,
                "isSequence": false,
                "constraints": null,
                "isDeprecated": false
              },
              "value": "monitor-01"
            },
            {
              "id": {"level": 1, "index": 6},
              "descriptor": {
                "description": "Scribble strip",
                "id": {"level": 1, "index": 6},
                "name": "userLabel",
                "typeName": "NcString",
                "isReadOnly": false,
                "isNullable": true,
                "isSequence": false,
                "constraints": null,
                "isDeprecated": false
              },
              "value": "Sender monitor 01"
            },
            {
              "id": {"level": 1, "index": 7},
              "descriptor": {
                "description": "Touchpoints to other contexts",
                "id": {"level": 1, "index": 7},
                "name": "touchpoints",
                "typeName": "NcTouchpoint",
                "isReadOnly": true,
                "isNullable": true,
                "isSequence": true,
                "constraints": null,
                "isDeprecated": false
              },
              "value": [
                {
                  "contextNamespace": "x-nmos",
                  "resource": {
                    "resourceType": "sender",
                    "id"          : "f741f9cb-c75e-4968-a0b6-30ebc5ccbd83"
                  }
                }
              ]
            },
            {
              "id": {"level": 1, "index": 8},
              "descriptor": {
                "description": "Runtime property constraints",
                "id": {"level": 1, "index": 8},
                "name": "runtimePropertyConstraints",
                "typeName": "NcPropertyConstraints",
                "isReadOnly": true,
                "isNullable": true,
                "isSequence": true,
                "constraints": null,
                "isDeprecated": false
              },
              "value": null
            }
          ],
          "isRebuildable": false
        },
        {
          "path": ["root", "stereo-gain"],
          "dependencyPaths": [],
          "allowedMembersClasses": [],
          "values": [
            {
              "id": {"level": 2, "index": 1},
              "descriptor": {
                "description": "TRUE if block is functional",
                "id": {"level": 2, "index": 1},
                "name": "enabled",
                "typeName": "NcBoolean",
                "isReadOnly": true,
                "isNullable": false,
                "isSequence": false,
                "constraints": null,
                "isDeprecated": false
              },
              "value": true
            },
            {
              "id": {"level": 2, "index": 2},
              "descriptor": {
                "description": "Descriptors of this block's members",
                "id": {"level": 2, "index": 2},
                "name": "members",
                "typeName": "NcBlockMemberDescriptor",
                "isReadOnly": true,
                "isNullable": false,
                "isSequence": true,
                "constraints": null,
                "isDeprecated": false
              },
              "value": [
                {
                  "description": "Channel gain block",
                  "role": "channel-gain",
                  "oid": 5,
                  "constantOid": true,
                  "classId": [1, 1],
                  "userLabel": "Channel gain",
                  "owner": 4
                },
                {
                  "description": "Master gain",
                  "role": "master-gain",
                  "oid": 8,
                  "constantOid": true,
                  "classId": [1, 2, 0, 1],
                  "userLabel": "Master gain",
                  "owner": 4
                }
              ]
            },
            {
              "id": {"level": 1, "index": 1},
              "descriptor": {
                "description": "Static value. All instances of the same class will have the same identity value",
                "id": {"level": 1, "index": 1},
                "name": "classId",
                "typeName": "NcClassId",
                "isReadOnly": true,
                "isNullable": false,
                "isSequence": false,
                "constraints": null,
                "isDeprecated": false
              },
              "value": [1, 1]
            },
            {
              "id": {"level": 1, "index": 2},
              "descriptor": {
                "description": "Object identifier",
                "id": {"level": 1, "index": 2},
                "name": "oid",
                "typeName": "NcOid",
                "isReadOnly": true,
                "isNullable": false,
                "isSequence": false,
                "constraints": null,
                "isDeprecated": false
              },
              "value": 4
            },
            {
              "id": {"level": 1, "index": 3},
              "descriptor": {
                "description": "TRUE iff OID is hardwired into device",
                "id": {"level": 1, "index": 3},
                "name": "constantOid",
                "typeName": "NcBoolean",
                "isReadOnly": true,
                "isNullable": false,
                "isSequence": false,
                "constraints": null,
                "isDeprecated": false
              },
              "value": true
            },
            {
              "id": {"level": 1, "index": 4},
              "descriptor": {
                "description": "OID of containing block. Can only ever be null for the root block",
                "id": {"level": 1, "index": 4},
                "name": "owner",
                "typeName": "NcOid",
                "isReadOnly": true,
                "isNullable": true,
                "isSequence": false,
                "constraints": null,
                "isDeprecated": false
              },
              "value": 1
            },
            {
              "id": {"level": 1, "index": 5},
              "descriptor": {
                "description": "role of obj in containing block",
                "id": {"level": 1, "index": 5},
                "name": "role",
                "typeName": "NcString",
                "isReadOnly": true,
                "isNullable": false,
                "isSequence": false,
                "constraints": null,
                "isDeprecated": false
              },
              "value": "stereo-gain"
            },
            {
              "id": {"level": 1, "index": 6},
              "descriptor": {
                "description": "Scribble strip",
                "id": {"level": 1, "index": 6},
                "name": "userLabel",
                "typeName": "NcString",
                "isReadOnly": false,
                "isNullable": true,
                "isSequence": false,
                "constraints": null,
                "isDeprecated": false
              },
              "value": "Stereo gain"
            },
            {
              "id": {"level": 1, "index": 7},
              "descriptor": {
                "description": "Touchpoints to other contexts",
                "id": {"level": 1, "index": 7},
                "name": "touchpoints",
                "typeName": "NcTouchpoint",
                "isReadOnly": true,
                "isNullable": true,
                "isSequence": true,
                "constraints": null,
                "isDeprecated": false
              },
              "value": null
            },
            {
              "id": {"level": 1, "index": 8},
              "descriptor": {
                "description": "Runtime property constraints",
                "id": {"level": 1, "index": 8},
                "name": "runtimePropertyConstraints",
                "typeName": "NcPropertyConstraints",
                "isReadOnly": true,
                "isNullable": true,
                "isSequence": true,
                "constraints": null,
                "isDeprecated": false
              },
              "value": null
            }
          ],
          "isRebuildable": false
        },
        {
          "path": ["root", "stereo-gain", "channel-gain"],
          "dependencyPaths": [],
          "allowedMembersClasses": [],
          "values": [
            {
              "id": {"level": 2, "index": 1},
              "descriptor": {
                "description": "TRUE if block is functional",
                "id": {"level": 2, "index": 1},
                "name": "enabled",
                "typeName": "NcBoolean",
                "isReadOnly": true,
                "isNullable": false,
                "isSequence": false,
                "constraints": null,
                "isDeprecated": false
              },
              "value": true
            },
            {
              "id": {"level": 2, "index": 2},
              "descriptor": {
                "description": "Descriptors of this block's members",
                "id": {"level": 2, "index": 2},
                "name": "members",
                "typeName": "NcBlockMemberDescriptor",
                "isReadOnly": true,
                "isNullable": false,
                "isSequence": true,
                "constraints": null,
                "isDeprecated": false
              },
              "value": [
                {
                  "description": "Left channel gain",
                  "role": "left-gain",
                  "oid": 6,
                  "constantOid": true,
                  "classId": [1, 2, 0, 1],
                  "userLabel": "Left gain",
                  "owner": 5
                },
                {
                  "description": "Right channel gain",
                  "role": "right-gain",
                  "oid": 7,
                  "constantOid": true,
                  "classId": [1, 2, 0, 1],
                  "userLabel": "Right gain",
                  "owner": 5
                }
              ]
            },
            {
              "id": {"level": 1, "index": 1},
              "descriptor": {
                "description": "Static value. All instances of the same class will have the same identity value",
                "id": {"level": 1, "index": 1},
                "name": "classId",
                "typeName": "NcClassId",
                "isReadOnly": true,
                "isNullable": false,
                "isSequence": false,
                "constraints": null,
                "isDeprecated": false
              },
              "value": [1, 1]
            },
            {
              "id": {"level": 1, "index": 2},
              "descriptor": {
                "description": "Object identifier",
                "id": {"level": 1, "index": 2},
                "name": "oid",
                "typeName": "NcOid",
                "isReadOnly": true,
                "isNullable": false,
                "isSequence": false,
                "constraints": null,
                "isDeprecated": false
              },
              "value": 5
            },
            {
              "id": {"level": 1, "index": 3},
              "descriptor": {
                "description": "TRUE iff OID is hardwired into device",
                "id": {"level": 1, "index": 3},
                "name": "constantOid",
                "typeName": "NcBoolean",
                "isReadOnly": true,
                "isNullable": false,
                "isSequence": false,
                "constraints": null,
                "isDeprecated": false
              },
              "value": true
            },
            {
              "id": {"level": 1, "index": 4},
              "descriptor": {
                "description": "OID of containing block. Can only ever be null for the root block",
                "id": {"level": 1, "index": 4},
                "name": "owner",
                "typeName": "NcOid",
                "isReadOnly": true,
                "isNullable": true,
                "isSequence": false,
                "constraints": null,
                "isDeprecated": false
              },
              "value": 4
            },
            {
              "id": {"level": 1, "index": 5},
              "descriptor": {
                "description": "role of obj in containing block",
                "id": {"level": 1, "index": 5},
                "name": "role",
                "typeName": "NcString",
                "isReadOnly": true,
                "isNullable": false,
                "isSequence": false,
                "constraints": null,
                "isDeprecated": false
              },
              "value": "channel-gain"
            },
            {
              "id": {"level": 1, "index": 6},
              "descriptor": {
                "description": "Scribble strip",
                "id": {"level": 1, "index": 6},
                "name": "userLabel",
                "typeName": "NcString",
                "isReadOnly": false,
                "isNullable": true,
                "isSequence": false,
                "constraints": null,
                "isDeprecated": false
              },
              "value": "Channel gain"
            },
            {
              "id": {"level": 1, "index": 7},
              "descriptor": {
                "description": "Touchpoints to other contexts",
                "id": {"level": 1, "index": 7},
                "name": "touchpoints",
                "typeName": "NcTouchpoint",
                "isReadOnly": true,
                "isNullable": true,
                "isSequence": true,
                "constraints": null,
                "isDeprecated": false
              },
              "value": null
            },
            {
              "id": {"level": 1, "index": 8},
              "descriptor": {
                "description": "Runtime property constraints",
                "id": {"level": 1, "index": 8},
                "name": "runtimePropertyConstraints",
                "typeName": "NcPropertyConstraints",
                "isReadOnly": true,
                "isNullable": true,
                "isSequence": true,
                "constraints": null,
                "isDeprecated": false
              },
              "value": null
            }
          ],
          "isRebuildable": false
        },
        {
          "path": ["root", "stereo-gain", "channel-gain", "left-gain"],
          "dependencyPaths": [],
          "allowedMembersClasses": [],
          "values": [
            {
              "id": {"level": 3, "index": 1},
              "descriptor": {
                "description": "Gain value",
                "id": {"level": 3, "index": 1},
                "name": "gainValue",
                "typeName": "NcFloat32",
                "isReadOnly": false,
                "isNullable": false,
                "isSequence": false,
                "constraints": null,
                "isDeprecated": false
              },
              "value": 0
            },
            {
              "id": {"level": 2, "index": 1},
              "descriptor": {
                "description": "TRUE iff worker is enabled",
                "id": {"level": 2, "index": 1},
                "name": "enabled",
                "typeName": "NcBoolean",
                "isReadOnly": false,
                "isNullable": false,
                "isSequence": false,
                "constraints": null,
                "isDeprecated": false
              },
              "value": true
            },
            {
              "id": {"level": 1, "index": 1},
              "descriptor": {
                "description": "Static value. All instances of the same class will have the same identity value",
                "id": {"level": 1, "index": 1},
                "name": "classId",
                "typeName": "NcClassId",
                "isReadOnly": true,
                "isNullable": false,
                "isSequence": false,
                "constraints": null,
                "isDeprecated": false
              },
              "value": [1, 2, 0, 1]
            },
            {
              "id": {"level": 1, "index": 2},
              "descriptor": {
                "description": "Object identifier",
                "id": {"level": 1, "index": 2},
                "name": "oid",
                "typeName": "NcOid",
                "isReadOnly": true,
                "isNullable": false,
                "isSequence": false,
                "constraints": null,
                "isDeprecated": false
              },
              "value": 6
            },
            {
              "id": {"level": 1, "index": 3},
              "descriptor": {
                "description": "TRUE iff OID is hardwired into device",
                "id": {"level": 1, "index": 3},
                "name": "constantOid",
                "typeName": "NcBoolean",
                "isReadOnly": true,
                "isNullable": false,
                "isSequence": false,
                "constraints": null,
                "isDeprecated": false
              },
              "value": true
            },
            {
              "id": {"level": 1, "index": 4},
              "descriptor": {
                "description": "OID of containing block. Can only ever be null for the root block",
                "id": {"level": 1, "index": 4},
                "name": "owner",
                "typeName": "NcOid",
                "isReadOnly": true,
                "isNullable": true,
                "isSequence": false,
                "constraints": null,
                "isDeprecated": false
              },
              "value": 5
            },
            {
              "id": {"level": 1, "index": 5},
              "descriptor": {
                "description": "role of obj in containing block",
                "id": {"level": 1, "index": 5},
                "name": "role",
                "typeName": "NcString",
                "isReadOnly": true,
                "isNullable": false,
                "isSequence": false,
                "constraints": null,
                "isDeprecated": false
              },
              "value": "left-gain"
            },
            {
              "id": {"level": 1, "index": 6},
              "descriptor": {
                "description": "Scribble strip",
                "id": {"level": 1, "index": 6},
                "name": "userLabel",
                "typeName": "NcString",
                "isReadOnly": false,
                "isNullable": true,
                "isSequence": false,
                "constraints": null,
                "isDeprecated": false
              },
              "value": "Left gain"
            },
            {
              "id": {"level": 1, "index": 7},
              "descriptor": {
                "description": "Touchpoints to other contexts",
                "id": {"level": 1, "index": 7},
                "name": "touchpoints",
                "typeName": "NcTouchpoint",
                "isReadOnly": true,
                "isNullable": true,
                "isSequence": true,
                "constraints": null,
                "isDeprecated": false
              },
              "value": []
            },
            {
              "id": {"level": 1, "index": 8},
              "descriptor": {
                "description": "Runtime property constraints",
                "id": {"level": 1, "index": 8},
                "name": "runtimePropertyConstraints",
                "typeName": "NcPropertyConstraints",
                "isReadOnly": true,
                "isNullable": true,
                "isSequence": true,
                "constraints": null,
                "isDeprecated": false
              },
              "value": null
            }
          ],
          "isRebuildable": false
        },
        {
          "path": ["root", "stereo-gain", "channel-gain", "right-gain"],
          "dependencyPaths": [],
          "allowedMembersClasses": [],
          "values": [
            {
              "id": {"level": 3, "index": 1},
              "descriptor": {
                "description": "Gain value",
                "id": {"level": 3, "index": 1},
                "name": "gainValue",
                "typeName": "NcFloat32",
                "isReadOnly": false,
                "isNullable": false,
                "isSequence": false,
                "constraints": null,
                "isDeprecated": false
              },
              "value": 0
            },
            {
              "id": {"level": 2, "index": 1},
              "descriptor": {
                "description": "TRUE iff worker is enabled",
                "id": {"level": 2, "index": 1},
                "name": "enabled",
                "typeName": "NcBoolean",
                "isReadOnly": false,
                "isNullable": false,
                "isSequence": false,
                "constraints": null,
                "isDeprecated": false
              },
              "value": true
            },
            {
              "id": {"level": 1, "index": 1},
              "descriptor": {
                "description": "Static value. All instances of the same class will have the same identity value",
                "id": {"level": 1, "index": 1},
                "name": "classId",
                "typeName": "NcClassId",
                "isReadOnly": true,
                "isNullable": false,
                "isSequence": false,
                "constraints": null,
                "isDeprecated": false
              },
              "value": [1, 2, 0, 1]
            },
            {
              "id": {"level": 1, "index": 2},
              "descriptor": {
                "description": "Object identifier",
                "id": {"level": 1, "index": 2},
                "name": "oid",
                "typeName": "NcOid",
                "isReadOnly": true,
                "isNullable": false,
                "isSequence": false,
                "constraints": null,
                "isDeprecated": false
              },
              "value": 7
            },
            {
              "id": {"level": 1, "index": 3},
              "descriptor": {
                "description": "TRUE iff OID is hardwired into device",
                "id": {"level": 1, "index": 3},
                "name": "constantOid",
                "typeName": "NcBoolean",
                "isReadOnly": true,
                "isNullable": false,
                "isSequence": false,
                "constraints": null,
                "isDeprecated": false
              },
              "value": true
            },
            {
              "id": {"level": 1, "index": 4},
              "descriptor": {
                "description": "OID of containing block. Can only ever be null for the root block",
                "id": {"level": 1, "index": 4},
                "name": "owner",
                "typeName": "NcOid",
                "isReadOnly": true,
                "isNullable": true,
                "isSequence": false,
                "constraints": null,
                "isDeprecated": false
              },
              "value": 5
            },
            {
              "id": {"level": 1, "index": 5},
              "descriptor": {
                "description": "role of obj in containing block",
                "id": {"level": 1, "index": 5},
                "name": "role",
                "typeName": "NcString",
                "isReadOnly": true,
                "isNullable": false,
                "isSequence": false,
                "constraints": null,
                "isDeprecated": false
              },
              "value": "right-gain"
            },
            {
              "id": {"level": 1, "index": 6},
              "descriptor": {
                "description": "Scribble strip",
                "id": {"level": 1, "index": 6},
                "name": "userLabel",
                "typeName": "NcString",
                "isReadOnly": false,
                "isNullable": true,
                "isSequence": false,
                "constraints": null,
                "isDeprecated": false
              },
              "value": "Right gain"
            },
            {
              "id": {"level": 1, "index": 7},
              "descriptor": {
                "description": "Touchpoints to other contexts",
                "id": {"level": 1, "index": 7},
                "name": "touchpoints",
                "typeName": "NcTouchpoint",
                "isReadOnly": true,
                "isNullable": true,
                "isSequence": true,
                "constraints": null,
                "isDeprecated": false
              },
              "value": []
            },
            {
              "id": {"level": 1, "index": 8},
              "descriptor": {
                "description": "Runtime property constraints",
                "id": {"level": 1, "index": 8},
                "name": "runtimePropertyConstraints",
                "typeName": "NcPropertyConstraints",
                "isReadOnly": true,
                "isNullable": true,
                "isSequence": true,
                "constraints": null,
                "isDeprecated": false
              },
              "value": null
            }
          ],
          "isRebuildable": false
        },
        {
          "path": ["root", "stereo-gain", "master-gain"],
          "dependencyPaths": [],
          "allowedMembersClasses": [],
          "values": [
            {
              "id": {"level": 3, "index": 1},
              "descriptor": {
                "description": "Gain value",
                "id": {"level": 3, "index": 1},
                "name": "gainValue",
                "typeName": "NcFloat32",
                "isReadOnly": false,
                "isNullable": false,
                "isSequence": false,
                "constraints": null,
                "isDeprecated": false
              },
              "value": 0
            },
            {
              "id": {"level": 2, "index": 1},
              "descriptor": {
                "description": "TRUE iff worker is enabled",
                "id": {"level": 2, "index": 1},
                "name": "enabled",
                "typeName": "NcBoolean",
                "isReadOnly": false,
                "isNullable": false,
                "isSequence": false,
                "constraints": null,
                "isDeprecated": false
              },
              "value": true
            },
            {
              "id": {"level": 1, "index": 1},
              "descriptor": {
                "description": "Static value. All instances of the same class will have the same identity value",
                "id": {"level": 1, "index": 1},
                "name": "classId",
                "typeName": "NcClassId",
                "isReadOnly": true,
                "isNullable": false,
                "isSequence": false,
                "constraints": null,
                "isDeprecated": false
              },
              "value": [1, 2, 0, 1]
            },
            {
              "id": {"level": 1, "index": 2},
              "descriptor": {
                "description": "Object identifier",
                "id": {"level": 1, "index": 2},
                "name": "oid",
                "typeName": "NcOid",
                "isReadOnly": true,
                "isNullable": false,
                "isSequence": false,
                "constraints": null,
                "isDeprecated": false
              },
              "value": 8
            },
            {
              "id": {"level": 1, "index": 3},
              "descriptor": {
                "description": "TRUE iff OID is hardwired into device",
                "id": {"level": 1, "index": 3},
                "name": "constantOid",
                "typeName": "NcBoolean",
                "isReadOnly": true,
                "isNullable": false,
                "isSequence": false,
                "constraints": null,
                "isDeprecated": false
              },
              "value": true
            },
            {
              "id": {"level": 1, "index": 4},
              "descriptor": {
                "description": "OID of containing block. Can only ever be null for the root block",
                "id": {"level": 1, "index": 4},
                "name": "owner",
                "typeName": "NcOid",
                "isReadOnly": true,
                "isNullable": true,
                "isSequence": false,
                "constraints": null,
                "isDeprecated": false
              },
              "value": 4
            },
            {
              "id": {"level": 1, "index": 5},
              "descriptor": {
                "description": "role of obj in containing block",
                "id": {"level": 1, "index": 5},
                "name": "role",
                "typeName": "NcString",
                "isReadOnly": true,
                "isNullable": false,
                "isSequence": false,
                "constraints": null,
                "isDeprecated": false
              },
              "value": "master-gain"
            },
            {
              "id": {"level": 1, "index": 6},
              "descriptor": {
                "description": "Scribble strip",
                "id": {"level": 1, "index": 6},
                "name": "userLabel",
                "typeName": "NcString",
                "isReadOnly": false,
                "isNullable": true,
                "isSequence": false,
                "constraints": null,
                "isDeprecated": false
              },
              "value": "Master gain"
            },
            {
              "id": {"level": 1, "index": 7},
              "descriptor": {
                "description": "Touchpoints to other contexts",
                "id": {"level": 1, "index": 7},
                "name": "touchpoints",
                "typeName": "NcTouchpoint",
                "isReadOnly": true,
                "isNullable": true,
                "isSequence": true,
                "constraints": null,
                "isDeprecated": false
              },
              "value": []
            },
            {
              "id": {"level": 1, "index": 8},
              "descriptor": {
                "description": "Runtime property constraints",
                "id": {"level": 1, "index": 8},
                "name": "runtimePropertyConstraints",
                "typeName": "NcPropertyConstraints",
                "isReadOnly": true,
                "isNullable": true,
                "isSequence": true,
                "constraints": null,
                "isDeprecated": false
              },
              "value": null
            }
          ],
          "isRebuildable": false
        },
        {
          "path": ["root", "example-controls"],
          "dependencyPaths": [],
          "allowedMembersClasses": [ [1, 2, 0, 2] ],
          "values": [
            {
              "id": {"level": 2, "index": 1},
              "descriptor": {
                "description": "TRUE if block is functional",
                "id": {"level": 2, "index": 1},
                "name": "enabled",
                "typeName": "NcBoolean",
                "isReadOnly": true,
                "isNullable": false,
                "isSequence": false,
                "constraints": null,
                "isDeprecated": false
              },
              "value": true
            },
            {
              "id": {"level": 2, "index": 2},
              "descriptor": {
                "description": "Descriptors of this block's members",
                "id": {"level": 2, "index": 2},
                "name": "members",
                "typeName": "NcBlockMemberDescriptor",
                "isReadOnly": true,
                "isNullable": false,
                "isSequence": true,
                "constraints": null,
                "isDeprecated": false
              },
              "value": [
                {
                  "description": "Example control worker",
                  "role": "example-control-01",
                  "oid": 15,
                  "constantOid": true,
                  "classId": [1, 2, 0, 2],
                  "userLabel": "Example control worker 01",
                  "owner": 14
                }
              ]
            },
            {
              "id": {"level": 1, "index": 1},
              "descriptor": {
                "description": "Static value. All instances of the same class will have the same identity value",
                "id": {"level": 1, "index": 1},
                "name": "classId",
                "typeName": "NcClassId",
                "isReadOnly": true,
                "isNullable": false,
                "isSequence": false,
                "constraints": null,
                "isDeprecated": false
              },
              "value": [1, 1]
            },
            {
              "id": {"level": 1, "index": 2},
              "descriptor": {
                "description": "Object identifier",
                "id": {"level": 1, "index": 2},
                "name": "oid",
                "typeName": "NcOid",
                "isReadOnly": true,
                "isNullable": false,
                "isSequence": false,
                "constraints": null,
                "isDeprecated": false
              },
              "value": 14
            },
            {
              "id": {"level": 1, "index": 3},
              "descriptor": {
                "description": "TRUE iff OID is hardwired into device",
                "id": {"level": 1, "index": 3},
                "name": "constantOid",
                "typeName": "NcBoolean",
                "isReadOnly": true,
                "isNullable": false,
                "isSequence": false,
                "constraints": null,
                "isDeprecated": false
              },
              "value": true
            },
            {
              "id": {"level": 1, "index": 4},
              "descriptor": {
                "description": "OID of containing block. Can only ever be null for the root block",
                "id": {"level": 1, "index": 4},
                "name": "owner",
                "typeName": "NcOid",
                "isReadOnly": true,
                "isNullable": true,
                "isSequence": false,
                "constraints": null,
                "isDeprecated": false
              },
              "value": 1
            },
            {
              "id": {"level": 1, "index": 5},
              "descriptor": {
                "description": "role of obj in containing block",
                "id": {"level": 1, "index": 5},
                "name": "role",
                "typeName": "NcString",
                "isReadOnly": true,
                "isNullable": false,
                "isSequence": false,
                "constraints": null,
                "isDeprecated": false
              },
              "value": "example-controls"
            },
            {
              "id": {"level": 1, "index": 6},
              "descriptor": {
                "description": "Scribble strip",
                "id": {"level": 1, "index": 6},
                "name": "userLabel",
                "typeName": "NcString",
                "isReadOnly": false,
                "isNullable": true,
                "isSequence": false,
                "constraints": null,
                "isDeprecated": false
              },
              "value": "Example controls"
            },
            {
              "id": {"level": 1, "index": 7},
              "descriptor": {
                "description": "Touchpoints to other contexts",
                "id": {"level": 1, "index": 7},
                "name": "touchpoints",
                "typeName": "NcTouchpoint",
                "isReadOnly": true,
                "isNullable": true,
                "isSequence": true,
                "constraints": null,
                "isDeprecated": false
              },
              "value": null
            },
            {
              "id": {"level": 1, "index": 8},
              "descriptor": {
                "description": "Runtime property constraints",
                "id": {"level": 1, "index": 8},
                "name": "runtimePropertyConstraints",
                "typeName": "NcPropertyConstraints",
                "isReadOnly": true,
                "isNullable": true,
                "isSequence": true,
                "constraints": null,
                "isDeprecated": false
              },
              "value": null
            }
          ],
          "isRebuildable": true
        },
        {
          "path": ["root", "example-controls", "example-control-01"],
          "dependencyPaths": [ ["root", "example-controls"] ],
          "allowedMembersClasses": [],
          "values": [
            {
              "id": {"level": 3, "index": 1},
              "descriptor": {
                "description": "Example enum property",
                "id": {"level": 3, "index": 1},
                "name": "enumProperty",
                "typeName": "ExampleEnum",
                "isReadOnly": false,
                "isNullable": false,
                "isSequence": false,
                "constraints": null,
                "isDeprecated": false
              },
              "value": 0
            },
            {
              "id": {"level": 3, "index": 2},
              "descriptor": {
                "description": "Example string property",
                "id": {"level": 3, "index": 2},
                "name": "stringProperty",
                "typeName": "NcString",
                "isReadOnly": false,
                "isNullable": false,
                "isSequence": false,
                "constraints": {
                  "defaultValue" : null,
                  "maxCharacters":   10,
                  "pattern"      : null
                },
                "isDeprecated": false
              },
              "value": "ABC"
            },
            {
              "id": {"level": 3, "index": 3},
              "descriptor": {
                "description": "Example numeric property",
                "id": {"level": 3, "index": 3},
                "name": "numberProperty",
                "typeName": "NcUint64",
                "isReadOnly": false,
                "isNullable": false,
                "isSequence": false,
                "constraints": {
                  "defaultValue":    3,
                  "maximum"     : 1000,
                  "minimum"     :    0,
                  "step"        :    1
                },
                "isDeprecated": false
              },
              "value": 999
            },
            {
              "id": {"level": 3, "index": 4},
              "descriptor": {
                "description": "Example boolean property",
                "id": {"level": 3, "index": 4},
                "name": "booleanProperty",
                "typeName": "NcBoolean",
                "isReadOnly": false,
                "isNullable": false,
                "isSequence": false,
                "constraints": null,
                "isDeprecated": false
              },
              "value": false
            },
            {
              "id": {"level": 3, "index": 5},
              "descriptor": {
                "description": "Example object property",
                "id": {"level": 3, "index": 5},
                "name": "objectProperty",
                "typeName": "ExampleDataType",
                "isReadOnly": false,
                "isNullable": false,
                "isSequence": false,
                "constraints": null,
                "isDeprecated": false
              },
              "value": {
                "enumProperty": 0,
                "stringProperty": "default",
                "numberProperty": 5,
                "booleanProperty": false
              }
            },
            {
              "id": {"level": 3, "index": 6},
              "descriptor": {
                "description": "Method no args invoke counter",
                "id": {"level": 3, "index": 6},
                "name": "methodNoArgsCount",
                "typeName": "NcUint64",
                "isReadOnly": true,
                "isNullable": false,
                "isSequence": false,
                "constraints": null,
                "isDeprecated": false
              },
              "value": 0
            },
            {
              "id": {"level": 3, "index": 7},
              "descriptor": {
                "description": "Method simple args invoke counter",
                "id": {"level": 3, "index": 7},
                "name": "methodSimpleArgsCount",
                "typeName": "NcUint64",
                "isReadOnly": true,
                "isNullable": false,
                "isSequence": false,
                "constraints": null,
                "isDeprecated": false
              },
              "value": 0
            },
            {
              "id": {"level": 3, "index": 8},
              "descriptor": {
                "description": "Method obj arg invoke counter",
                "id": {"level": 3, "index": 8},
                "name": "methodObjectArgCount",
                "typeName": "NcUint64",
                "isReadOnly": true,
                "isNullable": false,
                "isSequence": false,
                "constraints": null,
                "isDeprecated": false
              },
              "value": 0
            },
            {
              "id": {"level": 3, "index": 9},
              "descriptor": {
                "description": "Example string sequence property",
                "id": {"level": 3, "index": 9},
                "name": "stringSequence",
                "typeName": "NcString",
                "isReadOnly": false,
                "isNullable": false,
                "isSequence": true,
                "constraints": null,
                "isDeprecated": false
              },
              "value": ["red", "blue", "green"]
            },
            {
              "id": {"level": 3, "index": 10},
              "descriptor": {
                "description": "Example boolean sequence property",
                "id": {"level": 3, "index": 10},
                "name": "booleanSequence",
                "typeName": "NcBoolean",
                "isReadOnly": false,
                "isNullable": false,
                "isSequence": true,
                "constraints": null,
                "isDeprecated": false
              },
              "value": [true, false]
            },
            {
              "id": {"level": 3, "index": 11},
              "descriptor": {
                "description": "Example enum sequence property",
                "id": {"level": 3, "index": 11},
                "name": "enumSequence",
                "typeName": "ExampleEnum",
                "isReadOnly": false,
                "isNullable": false,
                "isSequence": true,
                "constraints": null,
                "isDeprecated": false
              },
              "value": [1, 3]
            },
            {
              "id": {"level": 3, "index": 12},
              "descriptor": {
                "description": "Example number sequence property",
                "id": {"level": 3, "index": 12},
                "name": "numberSequence",
                "typeName": "NcUint64",
                "isReadOnly": false,
                "isNullable": false,
                "isSequence": true,
                "constraints": null,
                "isDeprecated": false
              },
              "value": [0, 50, 88]
            },
            {
              "id": {"level": 3, "index": 13},
              "descriptor": {
                "description": "Example object sequence property",
                "id": {"level": 3, "index": 13},
                "name": "objectSequence",
                "typeName": "ExampleDataType",
                "isReadOnly": false,
                "isNullable": false,
                "isSequence": true,
                "constraints": null,
                "isDeprecated": false
              },
              "value": [
                {
                  "enumProperty": 1,
                  "stringProperty": "example",
                  "numberProperty": 50,
                  "booleanProperty": false
                },
                {
                  "enumProperty": 3,
                  "stringProperty": "different",
                  "numberProperty": 75,
                  "booleanProperty": true
                }
              ]
            },
            {
              "id": {"level": 3, "index": 14},
              "descriptor": {
                "description": "Receiver monitor fault emulation property",
                "id": {"level": 3, "index": 14},
                "name": "receiverMonitorFaultEmulation",
                "typeName": "ReceiverMonitorFaultEmulation",
                "isReadOnly": false,
                "isNullable": false,
                "isSequence": false,
                "constraints": null,
                "isDeprecated": false
              },
              "value": 1
            },
            {
              "id": {"level": 3, "index": 15},
              "descriptor": {
                "description": "Sender monitor fault emulation property",
                "id": {"level": 3, "index": 15},
                "name": "senderMonitorFaultEmulation",
                "typeName": "SenderMonitorFaultEmulation",
                "isReadOnly": false,
                "isNullable": false,
                "isSequence": false,
                "constraints": null,
                "isDeprecated": false
              },
              "value": 1
            },
            {
              "id": {"level": 2, "index": 1},
              "descriptor": {
                "description": "TRUE iff worker is enabled",
                "id": {"level": 2, "index": 1},
                "name": "enabled",
                "typeName": "NcBoolean",
                "isReadOnly": false,
                "isNullable": false,
                "isSequence": false,
                "constraints": null,
                "isDeprecated": false
              },
              "value": true
            },
            {
              "id": {"level": 1, "index": 1},
              "descriptor": {
                "description": "Static value. All instances of the same class will have the same identity value",
                "id": {"level": 1, "index": 1},
                "name": "classId",
                "typeName": "NcClassId",
                "isReadOnly": true,
                "isNullable": false,
                "isSequence": false,
                "constraints": null,
                "isDeprecated": false
              },
              "value": [1, 2, 0, 2]
            },
            {
              "id": {"level": 1, "index": 2},
              "descriptor": {
                "description": "Object identifier",
                "id": {"level": 1, "index": 2},
                "name": "oid",
                "typeName": "NcOid",
                "isReadOnly": true,
                "isNullable": false,
                "isSequence": false,
                "constraints": null,
                "isDeprecated": false
              },
              "value": 15
            },
            {
              "id": {"level": 1, "index": 3},
              "descriptor": {
                "description": "TRUE iff OID is hardwired into device",
                "id": {"level": 1, "index": 3},
                "name": "constantOid",
                "typeName": "NcBoolean",
                "isReadOnly": true,
                "isNullable": false,
                "isSequence": false,
                "constraints": null,
                "isDeprecated": false
              },
              "value": true
            },
            {
              "id": {"level": 1, "index": 4},
              "descriptor": {
                "description": "OID of containing block. Can only ever be null for the root block",
                "id": {"level": 1, "index": 4},
                "name": "owner",
                "typeName": "NcOid",
                "isReadOnly": true,
                "isNullable": true,
                "isSequence": false,
                "constraints": null,
                "isDeprecated": false
              },
              "value": 14
            },
            {
              "id": {"level": 1, "index": 5},
              "descriptor": {
                "description": "role of obj in containing block",
                "id": {"level": 1, "index": 5},
                "name": "role",
                "typeName": "NcString",
                "isReadOnly": true,
                "isNullable": false,
                "isSequence": false,
                "constraints": null,
                "isDeprecated": false
              },
              "value": "example-control-01"
            },
            {
              "id": {"level": 1, "index": 6},
              "descriptor": {
                "description": "Scribble strip",
                "id": {"level": 1, "index": 6},
                "name": "userLabel",
                "typeName": "NcString",
                "isReadOnly": false,
                "isNullable": true,
                "isSequence": false,
                "constraints": null,
                "isDeprecated": false
              },
              "value": "Example control worker 01"
            },
            {
              "id": {"level": 1, "index": 7},
              "descriptor": {
                "description": "Touchpoints to other contexts",
                "id": {"level": 1, "index": 7},
                "name": "touchpoints",
                "typeName": "NcTouchpoint",
                "isReadOnly": true,
                "isNullable": true,
                "isSequence": true,
                "constraints": null,
                "isDeprecated": false
              },
              "value": []
            },
            {
              "id": {"level": 1, "index": 8},
              "descriptor": {
                "description": "Runtime property constraints",
                "id": {"level": 1, "index": 8},
                "name": "runtimePropertyConstraints",
                "typeName": "NcPropertyConstraints",
                "isReadOnly": true,
                "isNullable": true,
                "isSequence": true,
                "constraints": null,
                "isDeprecated": false
              },
              "value": null
            }
          ],
          "isRebuildable": true
        },
        {
          "path": ["root", "IdentBeacon"],
          "dependencyPaths": [],
          "allowedMembersClasses": [],
          "values": [
            {
              "id": {"level": 3, "index": 1},
              "descriptor": {
                "description": "Indicator active state",
                "id": {"level": 3, "index": 1},
                "name": "active",
                "typeName": "NcBoolean",
                "isReadOnly": false,
                "isNullable": false,
                "isSequence": false,
                "constraints": null,
                "isDeprecated": false
              },
              "value": false
            },
            {
              "id": {"level": 2, "index": 1},
              "descriptor": {
                "description": "TRUE iff worker is enabled",
                "id": {"level": 2, "index": 1},
                "name": "enabled",
                "typeName": "NcBoolean",
                "isReadOnly": false,
                "isNullable": false,
                "isSequence": false,
                "constraints": null,
                "isDeprecated": false
              },
              "value": true
            },
            {
              "id": {"level": 1, "index": 1},
              "descriptor": {
                "description": "Static value. All instances of the same class will have the same identity value",
                "id": {"level": 1, "index": 1},
                "name": "classId",
                "typeName": "NcClassId",
                "isReadOnly": true,
                "isNullable": false,
                "isSequence": false,
                "constraints": null,
                "isDeprecated": false
              },
              "value": [1, 2, 1]
            },
            {
              "id": {"level": 1, "index": 2},
              "descriptor": {
                "description": "Object identifier",
                "id": {"level": 1, "index": 2},
                "name": "oid",
                "typeName": "NcOid",
                "isReadOnly": true,
                "isNullable": false,
                "isSequence": false,
                "constraints": null,
                "isDeprecated": false
              },
              "value": 13
            },
            {
              "id": {"level": 1, "index": 3},
              "descriptor": {
                "description": "TRUE iff OID is hardwired into device",
                "id": {"level": 1, "index": 3},
                "name": "constantOid",
                "typeName": "NcBoolean",
                "isReadOnly": true,
                "isNullable": false,
                "isSequence": false,
                "constraints": null,
                "isDeprecated": false
              },
              "value": true
            },
            {
              "id": {"level": 1, "index": 4},
              "descriptor": {
                "description": "OID of containing block. Can only ever be null for the root block",
                "id": {"level": 1, "index": 4},
                "name": "owner",
                "typeName": "NcOid",
                "isReadOnly": true,
                "isNullable": true,
                "isSequence": false,
                "constraints": null,
                "isDeprecated": false
              },
              "value": 1
            },
            {
              "id": {"level": 1, "index": 5},
              "descriptor": {
                "description": "role of obj in containing block",
                "id": {"level": 1, "index": 5},
                "name": "role",
                "typeName": "NcString",
                "isReadOnly": true,
                "isNullable": false,
                "isSequence": false,
                "constraints": null,
                "isDeprecated": false
              },
              "value": "IdentBeacon"
            },
            {
              "id": {"level": 1, "index": 6},
              "descriptor": {
                "description": "Scribble strip",
                "id": {"level": 1, "index": 6},
                "name": "userLabel",
                "typeName": "NcString",
                "isReadOnly": false,
                "isNullable": true,
                "isSequence": false,
                "constraints": null,
                "isDeprecated": false
              },
              "value": "Identification beacon"
            },
            {
              "id": {"level": 1, "index": 7},
              "descriptor": {
                "description": "Touchpoints to other contexts",
                "id": {"level": 1, "index": 7},
                "name": "touchpoints",
                "typeName": "NcTouchpoint",
                "isReadOnly": true,
                "isNullable": true,
                "isSequence": true,
                "constraints": null,
                "isDeprecated": false
              },
              "value": []
            },
            {
              "id": {"level": 1, "index": 8},
              "descriptor": {
                "description": "Runtime property constraints",
                "id": {"level": 1, "index": 8},
                "name": "runtimePropertyConstraints",
                "typeName": "NcPropertyConstraints",
                "isReadOnly": true,
                "isNullable": true,
                "isSequence": true,
                "constraints": null,
                "isDeprecated": false
              },
              "value": null
            }
          ],
          "isRebuildable": false
        }
      ]
    },
    "recurse": true,
    "restoreMode": 0
  }
}
