Fix various errata found from testing.
diff --git a/specification/json/sections/cper-cxl-component.json b/specification/json/sections/cper-cxl-component.json
index 9cbd2e9..ef1b9c6 100644
--- a/specification/json/sections/cper-cxl-component.json
+++ b/specification/json/sections/cper-cxl-component.json
@@ -2,9 +2,12 @@
     "$id": "cper-json-cxl-component-section",
     "$schema": "https://json-schema.org/draft/2020-12/schema",
     "type": "object",
-    "required": ["validationBits", "deviceID", "deviceSerial"],
+    "required": ["length", "validationBits", "deviceID", "deviceSerial"],
     "additionalProperties": false,
     "properties": {
+        "length": {
+            "type": "integer"
+        },
         "validationBits": {
             "type": "object",
             "required": ["deviceIDValid", "deviceSerialValid", "cxlComponentEventLogValid"],
diff --git a/specification/json/sections/cper-cxl-protocol.json b/specification/json/sections/cper-cxl-protocol.json
index fa25e81..bc22453 100644
--- a/specification/json/sections/cper-cxl-protocol.json
+++ b/specification/json/sections/cper-cxl-protocol.json
@@ -2,7 +2,7 @@
     "$id": "cper-json-cxl-protocol-section",
     "$schema": "https://json-schema.org/draft/2020-12/schema",
     "type": "object",
-    "required": ["validationBits", "agentType", "agentAddress", "deviceID", "deviceSerial", "capabilityStructure", "dvsecLength", "errorLogLength", "cxlDVSEC", "cxlErrorLog"],
+    "required": ["validationBits", "agentType", "cxlAgentAddress", "deviceID", "dvsecLength", "errorLogLength", "cxlDVSEC", "cxlErrorLog"],
     "additionalProperties": false,
     "properties": {
         "validationBits": {
@@ -36,7 +36,7 @@
             "type": "object",
             "$ref": "./common/cper-json-nvp.json"
         },
-        "agentAddress": {
+        "cxlAgentAddress": {
             "type": "object",
             "oneOf": [
                 {
@@ -68,6 +68,30 @@
                 }
             ]
         },
+        "deviceID": {
+            "type": "object",
+            "required": ["vendorID", "deviceID", "subsystemVendorID", "subsystemDeviceID", "classCode", "slotNumber"],
+            "properties": {
+                "vendorID": { 
+                    "type": "integer"
+                },
+                "deviceID": { 
+                    "type": "integer"
+                },
+                "subsystemVendorID": { 
+                    "type": "integer"
+                },
+                "subsystemDeviceID": { 
+                    "type": "integer"
+                },
+                "classCode": { 
+                    "type": "integer"
+                },
+                "slotNumber": { 
+                    "type": "integer"
+                }
+            }
+        },
         "deviceSerial": { 
             "type": "integer"
         },
diff --git a/specification/json/sections/cper-firmware.json b/specification/json/sections/cper-firmware.json
index 2003f6e..1e9ea67 100644
--- a/specification/json/sections/cper-firmware.json
+++ b/specification/json/sections/cper-firmware.json
@@ -16,7 +16,7 @@
             "type": "integer"
         },
         "recordIDGUID": {
-            "type": "integer"
+            "type": "string"
         }
     }
 }
\ No newline at end of file
diff --git a/specification/json/sections/cper-generic-dmar.json b/specification/json/sections/cper-generic-dmar.json
index ddccc14..e5fee69 100644
--- a/specification/json/sections/cper-generic-dmar.json
+++ b/specification/json/sections/cper-generic-dmar.json
@@ -13,7 +13,7 @@
         },
         "faultReason": {
             "type": "object",
-            "required": ["value", "name", "description"],
+            "required": ["value", "name"],
             "properties": {
                 "value": {
                     "type": "integer"
diff --git a/specification/json/sections/cper-memory.json b/specification/json/sections/cper-memory.json
index 38243c1..4c5a356 100644
--- a/specification/json/sections/cper-memory.json
+++ b/specification/json/sections/cper-memory.json
@@ -7,7 +7,7 @@
     "properties": {
         "validationBits": {
             "type": "object",
-            "required": ["errorStatusValid", "physicalAddressValid", "physicalAddressMaskValid", "nodeValid", "cardValid", "moduleValid", "bankValid", "deviceValid", "rowValid", "memoryPlatformTargetValid", "memoryErrorTypeValid", "rankNumberValid", "cardHandleValid", "moduleHandleValid", "extendedRowBitsValid", "bankGroupValid", "bankAddressValid", "chipIdentificationValid"],
+            "required": ["errorStatusValid", "physicalAddressValid", "physicalAddressMaskValid", "nodeValid", "cardValid", "moduleValid", "bankValid", "deviceValid", "rowValid", "columnValid", "bitPositionValid", "platformRequestorIDValid", "platformResponderIDValid", "memoryPlatformTargetValid", "memoryErrorTypeValid", "rankNumberValid", "cardHandleValid", "moduleHandleValid", "extendedRowBitsValid", "bankGroupValid", "bankAddressValid", "chipIdentificationValid"],
             "properties": {
                 "errorStatusValid": {
                     "type": "boolean"
@@ -36,6 +36,18 @@
                 "rowValid": {
                     "type": "boolean"
                 },
+                "columnValid": {
+                    "type": "boolean"
+                },
+                "bitPositionValid": {
+                    "type": "boolean"
+                },
+                "platformRequestorIDValid": {
+                    "type": "boolean"
+                },
+                "platformResponderIDValid": {
+                    "type": "boolean"
+                },
                 "memoryPlatformTargetValid": {
                     "type": "boolean"
                 },
diff --git a/specification/json/sections/cper-pci-bus.json b/specification/json/sections/cper-pci-bus.json
index 0e9c121..a2bc18e 100644
--- a/specification/json/sections/cper-pci-bus.json
+++ b/specification/json/sections/cper-pci-bus.json
@@ -61,6 +61,9 @@
         "busAddress": {
             "type": "integer"
         },
+        "busData": {
+            "type": "integer"
+        },
         "busCommandType": {
             "type": "string"
         },
diff --git a/specification/json/sections/cper-vtd-dmar.json b/specification/json/sections/cper-vtd-dmar.json
index baa5942..e76abb7 100644
--- a/specification/json/sections/cper-vtd-dmar.json
+++ b/specification/json/sections/cper-vtd-dmar.json
@@ -27,6 +27,9 @@
             "type": "integer"
         },
         "faultStatusRegister": {
+            "type": "integer"
+        },
+        "faultRecord": {
             "type": "object",
             "required": ["faultInformation", "sourceIdentifier", "privelegeModeRequested", "executePermissionRequested", "pasidPresent", "faultReason", "pasidValue", "addressType", "type"],
             "properties": {
@@ -66,22 +69,22 @@
         "contextEntry": {
             "type": "string"
         },
-        "pageEntry_Level6": {
+        "pageTableEntry_Level6": {
             "type": "integer"
         },
-        "pageEntry_Level5": {
+        "pageTableEntry_Level5": {
             "type": "integer"
         },
-        "pageEntry_Level4": {
+        "pageTableEntry_Level4": {
             "type": "integer"
         },
-        "pageEntry_Level3": {
+        "pageTableEntry_Level3": {
             "type": "integer"
         },
-        "pageEntry_Level2": {
+        "pageTableEntry_Level2": {
             "type": "integer"
         },
-        "pageEntry_Level1": {
+        "pageTableEntry_Level1": {
             "type": "integer"
         }
     }