blob: 68a9387523b288ac7b6579528e13c2a1a243bca4 [file] [log] [blame]
Lawrence Tang079d5812022-07-12 14:15:32 +01001{
2 "$id": "cper-json-header",
3 "$schema": "https://json-schema.org/draft/2020-12/schema",
4 "type": "object",
5 "required": ["revision", "sectionCount", "severity", "validationBits", "recordLength", "creatorID", "notificationType", "recordID", "flags", "persistenceInfo"],
6 "additionalProperties": false,
7 "properties": {
8 "revision": {
9 "type": "object",
10 "required": ["major", "minor"],
11 "properties": {
12 "major": {
13 "type": "integer",
14 "minimum": 0
15 },
16 "minor": {
17 "type": "integer",
18 "minimum": 0
19 }
20 }
21 },
22 "sectionCount": {
23 "type": "integer",
24 "minimum": 0
25 },
26 "severity": {
27 "type": "object",
28 "required": ["name", "code"],
29 "properties": {
30 "name": {
31 "type": "string"
32 },
33 "code": {
34 "type": "integer",
35 "minimum": 0
36 }
37 }
38 },
39 "validationBits": {
40 "type": "object",
41 "required": ["platformIDValid", "timestampValid", "partitionIDValid"],
42 "properties": {
43 "platformIDValid": {
44 "type": "boolean"
45 },
46 "timestampValid": {
47 "type": "boolean"
48 },
49 "partitionIDValid": {
50 "type": "boolean"
51 }
52 }
53 },
54 "recordLength": {
55 "type": "integer",
56 "minimum": 0
57 },
58 "timestamp": {
59 "type": "string"
60 },
61 "timestampIsPrecise": {
62 "type": "boolean"
63 },
64 "platformID": {
65 "type": "string"
66 },
67 "partitionID": {
68 "type": "string"
69 },
70 "creatorID": {
71 "type": "string"
72 },
73 "notificationType": {
74 "type": "object",
75 "required": ["guid", "type"],
76 "properties": {
77 "guid": {
78 "type": "string",
79 "pattern": "^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{16}$"
80 },
81 "type": {
82 "type": "string"
83 }
84 }
85 },
86 "recordID": {
87 "type": "integer"
88 },
89 "flags": {
90 "type": "object",
91 "$ref": "./common/cper-json-nvp.json"
92 },
93 "persistenceInfo": {
94 "type": "integer"
95 }
96 }
97}