{
    "$ref": "#/definitions/eventNotification",
    "$schema": "http://json-schema.org/draft-04/schema#",
    "description": "Telemetry event notification schema promoted from 1.3.0-beta.2",
    "definitions": {
        "ackToken": {
            "description": "Token that the server must return to acknowledge the notification",
            "type": "string"
        },
        "eventNotification": {
            "description": "List of events in order of sequence number",
            "properties": {
                "events": {
                    "description": "A list of events in order of sequence number starting at sequenceNumber with a maximum length of limit.",
                    "items": {
                          "dependencies": {
                              "eventDetail": [
                                  "eventDetailType"
                              ],
                              "onDuration": [
                                  "powerCycleCount"
                              ],
                              "powerCycleCount": [
                                  "onDuration"
                              ]
                          },
                          "properties": {
                              "dateTime": {
                                  "description": "Originator datetime when the event actually occured",
                                  "format": "date-time",
                                  "type": "string"
                              },
                              "eventCategory": {
                                  "description": "Possible values of Event Categories for a Telemetry Event",
                                  "type": "string",
                                  "enum": [
                                      "supply",
                                      "job",
                                      "systemError",
                                      "power",
                                      "fwUpdate",
                                      "jobStatus",
                                      "jobError",
                                      "wifiNetwork",
                                      "wifiSetup",
                                      "errorRecovery",
                                      "printHead",
                                      "calibration",
                                      "userConsentManagement",
                                      "uuidInfo",
                                      "lifetimeCounterSnapshot",
                                      "simpleUi",
                                      "systemInformation",
                                      "rtp",
                                      "deviceSecurityAssessment",
                                      "deviceInformation",
                                      "diagnoseInformation",
                                      "driverConfigInformation",
                                      "driverUCDEIRInfo",
                                      "psdrSystemInformation",
                                      "bizModelUpdate",
                                      "deviceRegistration",
                                      "manufacturing",
                                      "fingerprintValidation",
                                      "engineStats",
                                      "healthTracker",
                                      "calibrationData",
                                      "misrData",
                                      "misrMetrics",
                                      "deviceClaim",
                                      "supplyManufacturing",
                                      "sysInfoBase",
                                      "jobInfo",
                                      "rtpCloud",
                                      "rtpCloudManufacturing",
                                      "suppliesAssessment",
                                      "cloudJobStatus",
                                      "iccResult",
                                      "helpUsage",
                                      "errorSystemEvents",
                                      "warningSystemEvents",
                                      "infoSystemEvents",
                                      "supplyEncoding",
                                      "deviceFwUpdateReport",
                                      "deviceEnvProfile",
                                      "ucdeDeviceEntitlement",
                                      "ucdeOrgUpdate",
                                      "ucdeAddress",
                                      "ucdeAddressAssociation",
                                      "iotOnboarding",
                                      "frontPanelFlow",
                                      "visitContextRaw",
                                      "browserInformation",
                                      "vcMvcSyncTransaction",
                                      "vcAuditTransaction",
                                      "vcMetadataDbSyncTransaction",
                                      "vcAuditFilterGeneration",
                                      "mvcManifest",
                                      "subscriptionEnrollment",
                                      "subscriptionBilling",
                                      "paasUsageInfo",
                                      "owsFlow",
                                      "pcFirmwareInfo",
                                      "pcIdentity",
                                      "pcOperatingSystem",
                                      "pcHwComponentsInfo",
                                      "pcDeviceInfo",
                                      "pcComponentsInfo",
                                      "messagehubUpdate",
                                      "transitionComCent",
                                      "pcDetails",
                                      "purchaseOrder",
                                      "thirdPartyOffer",
                                      "ucdeGrant",
                                      "ucdeOrderFulfillment",
                                      "ucdeOrgInvite",
                                      "userAccount",
                                      "qauth",
                                      "deviceSetupCheck",
                                      "pcFwComponentsInfo",
                                      "pcUsageSummary",
                                      "dcrSupplyData",
                                      "subscriptionUsage",
                                      "hpAppAudienceInstance",
                                      "customerSatisfaction",
                                      "userPreProvision",
                                      "networkReport",
                                      "scanAcquireTask"
                                    ]
                              },
                              "eventDetail": {
                                  "description": "The payload is optional, but will typically contain the details of the event. The structure and content of the eventDetail is specific to each eventCategory, and is defined in a different JSON-schema.",
                                  "type": "object"
                              },
                              "eventDetailJec": {
                                  "description": "This is the encrypted alternative to eventDetail. It is a JWE Compact string. Consult the security section for algorithms and keys.",
                                  "type": "string"
                              },
                              "eventDetailType": {
                                  "description": "Unique identifier (GUN) for the syntax and semantic definitions of eventDetail",
                                  "type": "string"
                              },
                              "onDuration": {
                                  "description": "Number of seconds since the imaging device was turned on when the event actually occured",
                                  "maximum": 2147483647,
                                  "minimum": 0,
                                  "type": "integer"
                              },
                              "powerCycleCount": {
                                  "description": "Number of power cycles since the manufacturing of the imaging device when the event actually occured",
                                  "maximum": 2147483647,
                                  "minimum": 0,
                                  "type": "integer"
                              },
                              "sequenceNumber": {
                                  "description": "The sequence number is an incrementing identifier used to indicate order of events. This number is LOCALLY scoped to each eventCategory",
                                  "maximum": 2147483647,
                                  "minimum": 0,
                                  "type": "integer"
                              },
                              "version": {
                                  "$ref": "#/definitions/version"
                              },
                              "sequenceNumberGlobal": {
                                  "description": "The sequence number is an incrementing identifier used to indicate order of events. This number is GLOBALLY scoped across all eventCategory's (This field is required for SW Clients.  Not applicable for imaging device.",
                                  "maximum": 2147483647,
                                  "minimum": 0,
                                  "type": "integer"
                              },
                              "filter": {
                                  "type": "object",
                                  "additionalProperties": false,
                                  "properties": {
                                      "filterId": {
                                          "description": "Filter identifier",
                                          "type": "integer",
                                          "minimum": 1,
                                          "maximum": 2147483647
                                      },
                                      "filterType": {
                                          "type": "string",
                                          "enum": [
                                              "exclusion",
                                              "inclusion"
                                          ]
                                      },
                                      "resourceId": {
                                          "description": "Resource identifier, gun/resoruce url/ ledm namespace",
                                          "type": "string",
                                          "minLength": 1,
                                          "maxLength": 512
                                      },
                                      "attributes": {
                                          "description": "array of xpaths in case of ledm resourcetype, jsonpaths in case of cdm resourceType of the attributes",
                                          "type": "array",
                                          "maxItems": 128,
                                          "items": {
                                              "type": "string",
                                              "maxLength": 1024
                                          }
                                      }
                                  }
                              },
                              "filterError": {
                                "description": "error while applying filter (from CommonGlossary) in case of failure to apply the filter the behaviour is determined from the filterErrorBEhavior config",
                                  "type": "string",
                                  "enum": [
                                      "notFound",
                                      "badFilter"
                                  ]
                              }
                          },
                          "required": [
                              "eventCategory",
                              "sequenceNumber"
                          ],
                          "title": "event",
                          "type": "object",
                          "additionalProperties": false
                      },
                    "type": "array",
                    "maxItems": 250
                },
                "links": {
                    "items": {
                        "additionalProperties": false,
                        "dependencies": {
                            "state": [
                                "stateReason"
                            ]
                        },
                        "properties": {
                            "enctype": {
                                "description": "encoding format of the data envelop. A MIME type.",
                                "type": "string"
                            },
                            "hints": {
                                "description": "provides some information on how to manipulate the resource. it shouldn't be used if the resource responds to simple CRUD operations.",
                                "items": {
                                    "additionalProperties": false,
                                    "properties": {
                                        "method": {
                                            "description": "by default, the service API definition explains which HTTP methods are allowed on this resource. This hint is recommended if the behavior doesn't match common patterns.",
                                            "enum": [
                                                "get",
                                                "put",
                                                "patch",
                                                "post",
                                                "delete"
                                            ],
                                            "type": "string"
                                        }
                                    },
                                    "title": "hint",
                                    "type": "object"
                                },
                                "maxItems": 5,
                                "type": "array"
                            },
                            "href": {
                                "description": "URL to the resource defined by the relation name",
                                "pattern": "^(?:[a-zA-Z][a-zA-Z0-9+.-]*:(?://(?:(?:[a-zA-Z0-9_.~\\-!$&'()*+,;=:]|%[0-9A-Fa-f]{2})*@)?(?:\\[(?:(?:(?:[0-9A-Fa-f]{1,4}:){6}(?:[0-9A-Fa-f]{1,4}:[0-9A-Fa-f]{1,4}|(?:(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\\.){3}(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?))|::(?:[0-9A-Fa-f]{1,4}:){5}(?:[0-9A-Fa-f]{1,4}:[0-9A-Fa-f]{1,4}|(?:(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\\.){3}(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?))|(?:[0-9A-Fa-f]{1,4})?::(?:[0-9A-Fa-f]{1,4}:){4}(?:[0-9A-Fa-f]{1,4}:[0-9A-Fa-f]{1,4}|(?:(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\\.){3}(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?))|(?:(?:[0-9A-Fa-f]{1,4}:)?[0-9A-Fa-f]{1,4})?::(?:[0-9A-Fa-f]{1,4}:){3}(?:[0-9A-Fa-f]{1,4}:[0-9A-Fa-f]{1,4}|(?:(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\\.){3}(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?))|(?:(?:[0-9A-Fa-f]{1,4}:){,2}[0-9A-Fa-f]{1,4})?::(?:[0-9A-Fa-f]{1,4}:){2}(?:[0-9A-Fa-f]{1,4}:[0-9A-Fa-f]{1,4}|(?:(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\\.){3}(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?))|(?:(?:[0-9A-Fa-f]{1,4}:){,3}[0-9A-Fa-f]{1,4})?::(?:[0-9A-Fa-f]{1,4}:)(?:[0-9A-Fa-f]{1,4}:[0-9A-Fa-f]{1,4}|(?:(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\\.){3}(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?))|(?:(?:[0-9A-Fa-f]{1,4}:){,4}[0-9A-Fa-f]{1,4})?::(?:[0-9A-Fa-f]{1,4}:[0-9A-Fa-f]{1,4}|(?:(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\\.){3}(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?))|(?:(?:[0-9A-Fa-f]{1,4}:){,5}[0-9A-Fa-f]{1,4})?::[0-9A-Fa-f]{1,4}|(?:(?:[0-9A-Fa-f]{1,4}:){,6}[0-9A-Fa-f]{1,4})?::)|v[0-9A-Fa-f]+\\.[a-zA-Z0-9_.~\\-!$&'()*+,;=:]+)\\]|(?:(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\\.){3}(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)|(?:[a-zA-Z0-9_.~\\-!$&'()*+,;=]|%[0-9A-Fa-f]{2})*)(?::[0-9]*)?(?:/(?:[a-zA-Z0-9_.~\\-!$&'()*+,;=:@]|%[0-9A-Fa-f]{2})*)*|/(?:(?:[a-zA-Z0-9_.~\\-!$&'()*+,;=:@]|%[0-9A-Fa-f]{2})+(?:/(?:[a-zA-Z0-9_.~\\-!$&'()*+,;=:@]|%[0-9A-Fa-f]{2})*)*)?|(?:[a-zA-Z0-9_.~\\-!$&'()*+,;=:@]|%[0-9A-Fa-f]{2})+(?:/(?:[a-zA-Z0-9_.~\\-!$&'()*+,;=:@]|%[0-9A-Fa-f]{2})*)*|)(?:\\?(?:[a-zA-Z0-9_.~\\-!$&'()*+,;=:@/?]|%[0-9A-Fa-f]{2})*)?(?:\\#(?:[a-zA-Z0-9_.~\\-!$&'()*+,;=:@/?]|%[0-9A-Fa-f]{2})*)?|(?://(?:(?:[a-zA-Z0-9_.~\\-!$&'()*+,;=:]|%[0-9A-Fa-f]{2})*@)?(?:\\[(?:(?:(?:[0-9A-Fa-f]{1,4}:){6}(?:[0-9A-Fa-f]{1,4}:[0-9A-Fa-f]{1,4}|(?:(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\\.){3}(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?))|::(?:[0-9A-Fa-f]{1,4}:){5}(?:[0-9A-Fa-f]{1,4}:[0-9A-Fa-f]{1,4}|(?:(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\\.){3}(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?))|(?:[0-9A-Fa-f]{1,4})?::(?:[0-9A-Fa-f]{1,4}:){4}(?:[0-9A-Fa-f]{1,4}:[0-9A-Fa-f]{1,4}|(?:(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\\.){3}(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?))|(?:(?:[0-9A-Fa-f]{1,4}:)?[0-9A-Fa-f]{1,4})?::(?:[0-9A-Fa-f]{1,4}:){3}(?:[0-9A-Fa-f]{1,4}:[0-9A-Fa-f]{1,4}|(?:(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\\.){3}(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?))|(?:(?:[0-9A-Fa-f]{1,4}:){,2}[0-9A-Fa-f]{1,4})?::(?:[0-9A-Fa-f]{1,4}:){2}(?:[0-9A-Fa-f]{1,4}:[0-9A-Fa-f]{1,4}|(?:(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\\.){3}(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?))|(?:(?:[0-9A-Fa-f]{1,4}:){,3}[0-9A-Fa-f]{1,4})?::(?:[0-9A-Fa-f]{1,4}:)(?:[0-9A-Fa-f]{1,4}:[0-9A-Fa-f]{1,4}|(?:(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\\.){3}(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?))|(?:(?:[0-9A-Fa-f]{1,4}:){,4}[0-9A-Fa-f]{1,4})?::(?:[0-9A-Fa-f]{1,4}:[0-9A-Fa-f]{1,4}|(?:(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\\.){3}(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?))|(?:(?:[0-9A-Fa-f]{1,4}:){,5}[0-9A-Fa-f]{1,4})?::[0-9A-Fa-f]{1,4}|(?:(?:[0-9A-Fa-f]{1,4}:){,6}[0-9A-Fa-f]{1,4})?::)|v[0-9A-Fa-f]+\\.[a-zA-Z0-9_.~\\-!$&'()*+,;=:]+)\\]|(?:(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\\.){3}(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)|(?:[a-zA-Z0-9_.~\\-!$&'()*+,;=]|%[0-9A-Fa-f]{2})*)(?::[0-9]*)?(?:/(?:[a-zA-Z0-9_.~\\-!$&'()*+,;=:@]|%[0-9A-Fa-f]{2})*)*|/(?:(?:[a-zA-Z0-9_.~\\-!$&'()*+,;=:@]|%[0-9A-Fa-f]{2})+(?:/(?:[a-zA-Z0-9_.~\\-!$&'()*+,;=:@]|%[0-9A-Fa-f]{2})*)*)?|(?:[a-zA-Z0-9_.~\\-!$&'()*+,;=@]|%[0-9A-Fa-f]{2})+(?:/(?:[a-zA-Z0-9_.~\\-!$&'()*+,;=:@]|%[0-9A-Fa-f]{2})*)*|)(?:\\?(?:[a-zA-Z0-9_.~\\-!$&'()*+,;=:@/?]|%[0-9A-Fa-f]{2})*)?(?:\\#(?:[a-zA-Z0-9_.~\\-!$&'()*+,;=:@/?]|%[0-9A-Fa-f]{2})*)?)$",
                                "type": "string"
                            },
                            "hrefTemplate": {
                                "description": "contains a URL Template. The variable name (inside curly brackets) must be replaced by the variable value. ",
                                "type": "string"
                            },
                            "rel": {
                                "description": "Relation nane. Each service must define (or at least clarify) the semantic definition of each relation.",
                                "type": "string"
                            },
                            "state": {
                                "default": "available",
                                "description": "service may advertize a resource or action even though it isn't available. When this element is ommitted, the implicit state is available.",
                                "enum": [
                                    "available",
                                    "unavailable"
                                ],
                                "type": "string"
                            },
                            "stateReason": {
                                "description": "When the state is unavailable, the service may provide a reason.",
                                "enum": [
                                    "noHardware",
                                    "unlicensed"
                                ],
                                "type": "string"
                            }
                        },
                        "required": [
                            "rel"
                        ],
                        "title": "link",
                        "type": "object"
                    },
                    "maxItems": 32,
                    "type": "array"
                },
                "metadata": {
                    "additionalProperties": false,
                    "properties": {
                        "ackToken": {
                            "description": "Token that the server must return to acknowledge the notification",
                            "type": "string"
                        },
                        "notificationGlobalCount": {
                            "description": "Number of notifications sent (not necessarily acknowledged). Persistent over power-cycle.",
                            "maximum": 2147483647,
                            "minimum": 0,
                            "type": "integer"
                        }
                    },
                    "type": "object"
                },
                "originator": {
                    "additionalProperties": false,
                    "properties": {
                        "originatorDetail": {
                          "type": "object",
                          "required": [
                              "version",
                              "currentDateTime",
                              "sysUuid",
                              "osPlatform",
                              "appName",
                              "appVersion",
                              "appPackageId",
                              "appPackageDeployedUuid"
                          ],
                          "additionalProperties": false,
                          "properties": {
                              "version": {
                                  "$ref": "#/definitions/version"
                              },
                              "currentDateTime": {
                                  "description": "Software client time when the CDM payload was produced",
                                  "format": "date-time",
                                  "type": "string"
                              },
                              "sysUuid": {
                                  "$ref": "#/definitions/uuid",
                                  "description": "System UUID (if uniquely available), else use appPackageDeployedUuid"
                              },
                              "sysSerialNumber": {
                                  "description": "System HW/Device SerialNumber (if uniquely available)",
                                  "type": "string",
                                  "maxLength": 24,
                                  "_examples": [
                                      "CND2105MJ0",
                                      "5CD125KLF6"
                                  ]
                              },
                              "osPlatform": {
                                  "description": "OS Platform Name",
                                  "type": "string",
                                  "enum": [
                                      "Android",
                                      "iOS",
                                      "iPadOS",
                                      "Windows",
                                      "MacOS",
                                      "Linux",
                                      "ChromeOS"
                                  ]
                              },
                              "appName": {
                                  "_comment": "// TODO: Need more real world examples",
                                  "description": "Application Identifier Name",
                                  "type": "string",
                                  "pattern": "^[a-zA-Z][a-zA-Z0-9._-]+[a-zA-Z0-9]$",
                                  "maxLength": 128,
                                  "_examples": [
                                      "com.hpi.cdm.testapp"
                                  ]
                              },
                              "appVersion": {
                                  "description": "Application version, 3 dot notation. Semantic Versioning is HIGHLY recommended, with 4 segment for a monotonically increasing buildnumber or yyyymmddhh",
                                  "pattern": "^[0-9]+[.][0-9]+[.][0-9]+[.][0-9]+$",
                                  "type": "string",
                                  "_examples": [
                                      "2.3.5.2",
                                      "8.4.1.2",
                                      "21.02.29.129",
                                      "1.5.0.20201128"
                                  ]
                              },
                              "appPackageId": {
                                  "description": "Application Package Identifier in the form of {AppPackageName}_{AppPackageCustom}/{AppPackageVersion-1dot}.   AppPackageCustom is NOT required, but is available for use if desired.",
                                  "pattern": "[a-zA-Z]+(?:_[a-zA-Z])?/[0-9]+[.]+[0-9]+$",
                                  "type": "string",
                                  "maxLength": 64,
                                  "_examples": [
                                      "HPSmart/7.0",
                                      "AioRemote_win/1.3",
                                      "AioRemote_mac/1.3"
                                  ]
                              },
                              "appPackageDeployedUuid": {
                                  "$ref": "#/definitions/uuid",
                                  "description": "UUID unique to each deployment (aka installation) of the Application Package.  This should not be reset on package upgrades, but should be deleted on application removal.  This is field is sometimes referred to as appInstanceId, but it is the unique instance uuid for all apps/exes within the package, not for an individual specific app."
                              }
                          }
                        },
                        "originatorDetailType": {
                            "type": "string"
                        }
                    },
                    "required": [
                        "originatorDetailType"
                    ],
                    "type": "object",
                    "description": "Core information uniquely specifying the collecting client (detailed in a separate schema)"
                },
                "originatorContext": {
                    "description": "Additional information describing the collecting client (specified in a separate schema)",
                    "additionalProperties": false,
                    "properties": {
                        "originatorContextDetail": {
                          "type": "object",
                          "additionalProperties": false,
                          "required": [
                              "version"
                          ],
                          "properties": {
                              "version": {
                                  "$ref": "#/definitions/version"
                              },
                              "associatedDeviceUuid": {
                                  "$ref": "#/definitions/uuid",
                                  "_producer": "software-client",
                                  "description": "Device UUID currently associated with this event if available"
                              },
                              "associatedPcDeviceUuid": {
                                  "$ref": "com.hp.cdm.domain.glossary.version.1.schema.json#/definitions/uuid",
                                  "_producer": "software-client",
                                  "description": "HP PC Device UUID currently associated with this event if available"
                              },
                              "associatedDeviceProductNumber": {
                                  "_producer": "software-client",
                                  "_comment": "// TODO:  This definition should probably be moved to commonGlossary",
                                  "description": "HP Device Product Number associated with this event if available",
                                  "type": "string",
                                  "pattern": "[A-Z0-9]+",
                                  "minLength": 6,
                                  "maxLength": 8,
                                  "_examples": [
                                      "A7F66A"
                                  ]
                              },
                              "associatedStratusUserId": {
                                  "_comment": "// TODO:  Need to lock down more with regex or enum & needs examples",
                                  "_producer": "software-client",
                                  "type": "string",
                                  "maxLength": 256,
                                  "description": "Stratus UserID of the user associated with this event if available",
                                  "_examples": [
                                      ""
                                  ]
                              },
                              "appCaid": {
                                  "_producer": "software-client",
                                  "description": "Application Client Advertising ID (Aka MAID, Mobile Advertising ID)",
                                  "type": "string",
                                  "pattern": "^urn:(idfa:[A-F0-9]{8}-[A-F0-9]{4}-[A-F0-9]{4}-[A-F0-9]{4}-[A-F0-9]{12}|gaid:[a-f0-9]{8}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{12}|daid:[a-f0-9]{32})$",
                                  "_examples": [
                                      "urn:idfa:ED0E465D-1E3B-4A73-9977-E445C16B6808",
                                      "urn:gaid:d7db8cc8-35df-4978-a2e2-fa7b9716c592",
                                      "urn:daid:aecd3a844e77201eac0a149acd73f5aa"
                                  ]
                              },
                              "ucdeCorrelationId": {
                                  "_producer": "software-client",
                                  "description": "Cloud service correlation linking key, utilize x-reference-id header unless otherwise specified",
                                  "type": "string",
                                  "maxLength": 256
                              },
                              "acctProgramLevel": {
                                  "_producer": "software-client",
                                  "_comment": "// TODO:  This definition should probably be moved to commonGlossary",
                                  "description": "Account program level",
                                  "type": "string",
                                  "_WARNING": "// base, ucde, hpplus and ws-hp.com/wfh are all DEPRECATED, DO NOT USE!",
                                  "enum": [
                                      "Base",
                                      "UCDE",
                                      "HpPlus",
                                      "base",
                                      "ucde",
                                      "hpplus",
                                      "ws-hp.com/wfh"
                                  ]
                              }
                          }
                        },
                        "originatorContextDetailType": {
                            "type": "string"
                        }
                    },
                    "required": [
                        "originatorContextDetail",
                        "originatorContextDetailType"
                    ],
                    "type": "object"
                },
                "gateway": {
                    "description": "Information regarding the ip address of the connecting client (populated by ingress gateway)",
                    "additionalProperties": false,
                    "properties": {
                        "ipv4Address": {
                            "description": "ipv4 address of the client (printer, software, etc) connecting to the gateway",
                            "type": "string",
                            "format": "ipv4"
                        },
                        "ipv6Address": {
                            "description": "ipv6 address of the client (printer, software, etc) connecting to the gateway",
                            "type": "string",
                            "format": "ipv6"
                        },
                        "gatewayDateTime": {
                            "format": "date-time",
                            "type": "string",
                            "description": "Gateway time at arrival of payload"
                        }
                    },
                    "required": [
                        "gatewayDateTime"
                    ],
                    "oneOf": [
                        {
                            "required": [
                                "ipv4Address"
                            ]
                        },
                        {
                            "required": [
                                "ipv6Address"
                            ]
                        }
                    ],
                    "type": "object"
                },
                "payloadManifestJec": {
                    "description": "JWE-encrypted payload manifest (compact format)",
                    "type": "string"
                },
                "subscriptionId": {
                    "description": "Unique identifier for a subscription",
                    "type": "string"
                },
                "token": {
                    "description": "The security token provided by the client (not returned as part of a get).",
                    "type": "string"
                },
                "version": {
                    "$ref": "#/definitions/version"
                },
                "privacy": {
                    "description": "Privacy information describing data policies/consents (specified in a separate schema)",
                    "additionalProperties": false,
                    "properties": {
                        "privacyDetail": {
                            "type": "object"
                        },
                        "privacyDetailType": {
                            "type": "string"
                        }
                    },
                    "required": [
                        "privacyDetailType",
                        "privacyDetail"
                    ],
                    "type": "object"
                }
            },
            "required": [
                "version"
            ],
            "title": "Event Notification",
            "type": "object",
            "additionalProperties": false
        },
        "eventNotificationAck": {
            "additionalProperties": false,
            "properties": {
                "ackToken": {
                    "$ref": "#/definitions/ackToken"
                },
                "version": {
                    "$ref": "#/definitions/version"
                }
            },
            "required": [
                "version"
            ],
            "type": "object"
        },
        "version": {
            "description": "Conforms to the version scheme defined for all APIs",
            "pattern": "(\\d+\\.\\d+\\.\\d+(-\\w+\\.\\d+)?)",
            "title": "Common Version",
            "type": "string"
        },
        "uuid": {
            "description": "standard uuid format - according to RFC 4122. In its canonical textual representation, the 16 octets of a UUID are represented as 32 hexadecimal (base-16) digits, displayed in five groups separated by hyphens, in the form 8-4-4-4-12 for a total of 36 characters (32 hexadecimal characters and 4 hyphens).   For example: 123e4567-e89b-12d3-a456-426614174000",
            "maxLength": 36,
            "minLength": 36,
            "pattern": "[a-f0-9]{8}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{12}",
            "type": "string"
        }
    },
    "gun": "com.hp.cdm.service.eventing.version.1.resource.notification",
    "version": "1.3.0",
    "jsonSchemaGun": "com.hp.cdm.service.eventing.version.1.resource.notification.schema.json",
    "id": "https://schemaregistry.analysis.ext.hp.com/cdm/gun/com.hp.cdm.service.eventing.version.1.resource.notification.schema.json"
}
