Fix a bunch of warnings

using the list of warnings from here:
https://github.com/lefticus/cppbestpractices/blob/e73393f25a85f83fed7399d8b65cb117d00b2231/02-Use_the_Tools_Available.md#L100

Seems like a good place to start, and would improve things a bit
type-wise.  This patchset attempts to correct all the issues in one
shot.

Tested:
It builds.  Will test various subsystems that have been touched

Signed-off-by: Ed Tanous <ed.tanous@intel.com>
Change-Id: I588c26440e5a97f718a0f0ea74cc84107d53aa1e
diff --git a/redfish-core/include/node.hpp b/redfish-core/include/node.hpp
index 5819527..4c78eef 100644
--- a/redfish-core/include/node.hpp
+++ b/redfish-core/include/node.hpp
@@ -55,7 +55,7 @@
 {
   public:
     template <typename... Params>
-    Node(CrowApp& app, std::string&& entityUrl, Params... params)
+    Node(CrowApp& app, std::string&& entityUrl, Params... paramsIn)
     {
         crow::DynamicRule& get = app.routeDynamic(entityUrl.c_str());
         getRule = &get;
diff --git a/redfish-core/include/privileges.hpp b/redfish-core/include/privileges.hpp
index ec6e6a5..09fa05a 100644
--- a/redfish-core/include/privileges.hpp
+++ b/redfish-core/include/privileges.hpp
@@ -38,10 +38,10 @@
     "Login", "ConfigureManager", "ConfigureComponents", "ConfigureSelf",
     "ConfigureUsers"};
 
-constexpr const int basePrivilegeCount = basePrivileges.size();
+constexpr const size_t basePrivilegeCount = basePrivileges.size();
 
 /** @brief Max number of privileges per type  */
-constexpr const int maxPrivilegeCount = 32;
+constexpr const size_t maxPrivilegeCount = 32;
 
 /** @brief A vector of all privilege names and their indexes */
 static const std::vector<std::string> privilegeNames{basePrivileges.begin(),
@@ -100,7 +100,7 @@
      */
     bool setSinglePrivilege(const char* privilege)
     {
-        for (int searchIndex = 0; searchIndex < privilegeNames.size();
+        for (size_t searchIndex = 0; searchIndex < privilegeNames.size();
              searchIndex++)
         {
             if (privilege == privilegeNames[searchIndex])
@@ -140,8 +140,8 @@
     {
         std::vector<const std::string*> activePrivileges;
 
-        int searchIndex = 0;
-        int endIndex = basePrivilegeCount;
+        size_t searchIndex = 0;
+        size_t endIndex = basePrivilegeCount;
         if (type == PrivilegeType::OEM)
         {
             searchIndex = basePrivilegeCount - 1;
diff --git a/redfish-core/include/registries.hpp b/redfish-core/include/registries.hpp
index 6b30be9..411e9a0 100644
--- a/redfish-core/include/registries.hpp
+++ b/redfish-core/include/registries.hpp
@@ -34,7 +34,7 @@
     const char* description;
     const char* message;
     const char* severity;
-    const int numberOfArgs;
+    const size_t numberOfArgs;
     std::array<const char*, 5> paramTypes;
     const char* resolution;
 };
diff --git a/redfish-core/include/registries/base_message_registry.hpp b/redfish-core/include/registries/base_message_registry.hpp
index 472f51e..1c429c5 100644
--- a/redfish-core/include/registries/base_message_registry.hpp
+++ b/redfish-core/include/registries/base_message_registry.hpp
@@ -23,945 +23,820 @@
 namespace redfish::message_registries::base
 {
 const Header header = {
-    .copyright = "Copyright 2014-2018 DMTF. All rights reserved.",
-    .type = "#MessageRegistry.v1_0_0.MessageRegistry",
-    .id = "Base.1.4.0",
-    .name = "Base Message Registry",
-    .language = "en",
-    .description = "This registry defines the base messages for Redfish",
-    .registryPrefix = "Base",
-    .registryVersion = "1.4.0",
-    .owningEntity = "DMTF",
+    "Copyright 2014-2018 DMTF. All rights reserved.",
+    "#MessageRegistry.v1_0_0.MessageRegistry",
+    "Base.1.4.0",
+    "Base Message Registry",
+    "en",
+    "This registry defines the base messages for Redfish",
+    "Base",
+    "1.4.0",
+    "DMTF",
 };
-const std::array registry = {
+const std::array<MessageEntry, 58> registry = {
     MessageEntry{
         "AccessDenied",
         {
-            .description =
-                "Indicates that while attempting to access, connect to or "
-                "transfer to/from another resource, the service denied access.",
-            .message = "While attempting to establish a connection to %1, the "
-                       "service denied access.",
-            .severity = "Critical",
-            .numberOfArgs = 1,
-            .paramTypes =
-                {
-                    "string",
-                },
-            .resolution = "Attempt to ensure that the URI is correct and that "
-                          "the service has the appropriate credentials.",
+            "Indicates that while attempting to access, connect to or transfer "
+            "to/from another resource, the service denied access.",
+            "While attempting to establish a connection to %1, the service "
+            "denied access.",
+            "Critical",
+            1,
+            {
+                "string",
+            },
+            "Attempt to ensure that the URI is correct and that the service "
+            "has the appropriate credentials.",
         }},
-    MessageEntry{
-        "AccountForSessionNoLongerExists",
-        {
-            .description =
-                "Indicates that the account for the session has been removed, "
-                "thus the session has been removed as well.",
-            .message = "The account for the current session has been removed, "
-                       "thus the current session has been removed as well.",
-            .severity = "OK",
-            .numberOfArgs = 0,
-            .paramTypes = {},
-            .resolution = "Attempt to connect with a valid account.",
-        }},
-    MessageEntry{
-        "AccountModified",
-        {
-            .description =
-                "Indicates that the account was successfully modified.",
-            .message = "The account was successfully modified.",
-            .severity = "OK",
-            .numberOfArgs = 0,
-            .paramTypes = {},
-            .resolution = "No resolution is required.",
-        }},
-    MessageEntry{
-        "AccountNotModified",
-        {
-            .description = "Indicates that the modification requested for the "
-                           "account was not successful.",
-            .message = "The account modification request failed.",
-            .severity = "Warning",
-            .numberOfArgs = 0,
-            .paramTypes = {},
-            .resolution = "The modification may have failed due to permission "
-                          "issues or issues with the request body.",
-        }},
+    MessageEntry{"AccountForSessionNoLongerExists",
+                 {
+                     "Indicates that the account for the session has been "
+                     "removed, thus the session has been removed as well.",
+                     "The account for the current session has been removed, "
+                     "thus the current session has been removed as well.",
+                     "OK",
+                     0,
+                     {},
+                     "Attempt to connect with a valid account.",
+                 }},
+    MessageEntry{"AccountModified",
+                 {
+                     "Indicates that the account was successfully modified.",
+                     "The account was successfully modified.",
+                     "OK",
+                     0,
+                     {},
+                     "No resolution is required.",
+                 }},
+    MessageEntry{"AccountNotModified",
+                 {
+                     "Indicates that the modification requested for the "
+                     "account was not successful.",
+                     "The account modification request failed.",
+                     "Warning",
+                     0,
+                     {},
+                     "The modification may have failed due to permission "
+                     "issues or issues with the request body.",
+                 }},
     MessageEntry{"AccountRemoved",
                  {
-                     .description =
-                         "Indicates that the account was successfully removed.",
-                     .message = "The account was successfully removed.",
-                     .severity = "OK",
-                     .numberOfArgs = 0,
-                     .paramTypes = {},
-                     .resolution = "No resolution is required.",
+                     "Indicates that the account was successfully removed.",
+                     "The account was successfully removed.",
+                     "OK",
+                     0,
+                     {},
+                     "No resolution is required.",
                  }},
     MessageEntry{
         "ActionNotSupported",
         {
-            .description = "Indicates that the action supplied with the POST "
-                           "operation is not supported by the resource.",
-            .message = "The action %1 is not supported by the resource.",
-            .severity = "Critical",
-            .numberOfArgs = 1,
-            .paramTypes =
-                {
-                    "string",
-                },
-            .resolution = "The action supplied cannot be resubmitted to the "
-                          "implementation.  Perhaps the action was invalid, "
-                          "the wrong resource was the target or the "
-                          "implementation documentation may be of assistance.",
+            "Indicates that the action supplied with the POST operation is not "
+            "supported by the resource.",
+            "The action %1 is not supported by the resource.",
+            "Critical",
+            1,
+            {
+                "string",
+            },
+            "The action supplied cannot be resubmitted to the implementation.  "
+            "Perhaps the action was invalid, the wrong resource was the target "
+            "or the implementation documentation may be of assistance.",
         }},
-    MessageEntry{
-        "ActionParameterDuplicate",
-        {
-            .description = "Indicates that the action was supplied with a "
-                           "duplicated parameter in the request body.",
-            .message = "The action %1 was submitted with more than one value "
-                       "for the parameter %2.",
-            .severity = "Warning",
-            .numberOfArgs = 2,
-            .paramTypes =
-                {
-                    "string",
-                    "string",
-                },
-            .resolution =
-                "Resubmit the action with only one instance of the parameter "
-                "in the request body if the operation failed.",
-        }},
-    MessageEntry{
-        "ActionParameterMissing",
-        {
-            .description = "Indicates that the action requested was missing a "
-                           "parameter that is required to process the action.",
-            .message = "The action %1 requires the parameter %2 to be present "
-                       "in the request body.",
-            .severity = "Critical",
-            .numberOfArgs = 2,
-            .paramTypes =
-                {
-                    "string",
-                    "string",
-                },
-            .resolution = "Supply the action with the required parameter in "
-                          "the request body when the request is resubmitted.",
-        }},
-    MessageEntry{
-        "ActionParameterNotSupported",
-        {
-            .description = "Indicates that the parameter supplied for the "
-                           "action is not supported on the resource.",
-            .message = "The parameter %1 for the action %2 is not supported on "
-                       "the target resource.",
-            .severity = "Warning",
-            .numberOfArgs = 2,
-            .paramTypes =
-                {
-                    "string",
-                    "string",
-                },
-            .resolution = "Remove the parameter supplied and resubmit the "
-                          "request if the operation failed.",
-        }},
+    MessageEntry{"ActionParameterDuplicate",
+                 {
+                     "Indicates that the action was supplied with a duplicated "
+                     "parameter in the request body.",
+                     "The action %1 was submitted with more than one value for "
+                     "the parameter %2.",
+                     "Warning",
+                     2,
+                     {
+                         "string",
+                         "string",
+                     },
+                     "Resubmit the action with only one instance of the "
+                     "parameter in the request body if the operation failed.",
+                 }},
+    MessageEntry{"ActionParameterMissing",
+                 {
+                     "Indicates that the action requested was missing a "
+                     "parameter that is required to process the action.",
+                     "The action %1 requires the parameter %2 to be present in "
+                     "the request body.",
+                     "Critical",
+                     2,
+                     {
+                         "string",
+                         "string",
+                     },
+                     "Supply the action with the required parameter in the "
+                     "request body when the request is resubmitted.",
+                 }},
+    MessageEntry{"ActionParameterNotSupported",
+                 {
+                     "Indicates that the parameter supplied for the action is "
+                     "not supported on the resource.",
+                     "The parameter %1 for the action %2 is not supported on "
+                     "the target resource.",
+                     "Warning",
+                     2,
+                     {
+                         "string",
+                         "string",
+                     },
+                     "Remove the parameter supplied and resubmit the request "
+                     "if the operation failed.",
+                 }},
     MessageEntry{
         "ActionParameterUnknown",
         {
-            .description =
-                "Indicates that an action was submitted but a parameter "
-                "supplied did not match any of the known parameters.",
-            .message =
-                "The action %1 was submitted with the invalid parameter %2.",
-            .severity = "Warning",
-            .numberOfArgs = 2,
-            .paramTypes =
-                {
-                    "string",
-                    "string",
-                },
-            .resolution = "Correct the invalid parameter and resubmit the "
-                          "request if the operation failed.",
+            "Indicates that an action was submitted but a parameter supplied "
+            "did not match any of the known parameters.",
+            "The action %1 was submitted with the invalid parameter %2.",
+            "Warning",
+            2,
+            {
+                "string",
+                "string",
+            },
+            "Correct the invalid parameter and resubmit the request if the "
+            "operation failed.",
         }},
-    MessageEntry{
-        "ActionParameterValueFormatError",
-        {
-            .description =
-                "Indicates that a parameter was given the correct value type "
-                "but the value of that parameter was not supported.  This "
-                "includes value size/length exceeded.",
-            .message = "The value %1 for the parameter %2 in the action %3 is "
-                       "of a different format than the parameter can accept.",
-            .severity = "Warning",
-            .numberOfArgs = 3,
-            .paramTypes =
-                {
-                    "string",
-                    "string",
-                    "string",
-                },
-            .resolution =
-                "Correct the value for the parameter in the request body and "
-                "resubmit the request if the operation failed.",
-        }},
-    MessageEntry{
-        "ActionParameterValueTypeError",
-        {
-            .description = "Indicates that a parameter was given the wrong "
-                           "value type, such as when a number is supplied for "
-                           "a parameter that requires a string.",
-            .message = "The value %1 for the parameter %2 in the action %3 is "
-                       "of a different type than the parameter can accept.",
-            .severity = "Warning",
-            .numberOfArgs = 3,
-            .paramTypes =
-                {
-                    "string",
-                    "string",
-                    "string",
-                },
-            .resolution =
-                "Correct the value for the parameter in the request body and "
-                "resubmit the request if the operation failed.",
-        }},
+    MessageEntry{"ActionParameterValueFormatError",
+                 {
+                     "Indicates that a parameter was given the correct value "
+                     "type but the value of that parameter was not supported.  "
+                     "This includes value size/length exceeded.",
+                     "The value %1 for the parameter %2 in the action %3 is of "
+                     "a different format than the parameter can accept.",
+                     "Warning",
+                     3,
+                     {
+                         "string",
+                         "string",
+                         "string",
+                     },
+                     "Correct the value for the parameter in the request body "
+                     "and resubmit the request if the operation failed.",
+                 }},
+    MessageEntry{"ActionParameterValueTypeError",
+                 {
+                     "Indicates that a parameter was given the wrong value "
+                     "type, such as when a number is supplied for a parameter "
+                     "that requires a string.",
+                     "The value %1 for the parameter %2 in the action %3 is of "
+                     "a different type than the parameter can accept.",
+                     "Warning",
+                     3,
+                     {
+                         "string",
+                         "string",
+                         "string",
+                     },
+                     "Correct the value for the parameter in the request body "
+                     "and resubmit the request if the operation failed.",
+                 }},
     MessageEntry{
         "CouldNotEstablishConnection",
         {
-            .description = "Indicates that the attempt to access the "
-                           "resource/file/image at the URI was unsuccessful "
-                           "because a session could not be established.",
-            .message =
-                "The service failed to establish a connection with the URI %1.",
-            .severity = "Critical",
-            .numberOfArgs = 1,
-            .paramTypes =
-                {
-                    "string",
-                },
-            .resolution =
-                "Ensure that the URI contains a valid and reachable node name, "
-                "protocol information and other URI components.",
+            "Indicates that the attempt to access the resource/file/image at "
+            "the URI was unsuccessful because a session could not be "
+            "established.",
+            "The service failed to establish a connection with the URI %1.",
+            "Critical",
+            1,
+            {
+                "string",
+            },
+            "Ensure that the URI contains a valid and reachable node name, "
+            "protocol information and other URI components.",
         }},
     MessageEntry{
         "CreateFailedMissingReqProperties",
         {
-            .description =
-                "Indicates that a create was attempted on a resource but that "
-                "properties that are required for the create operation were "
-                "missing from the request.",
-            .message = "The create operation failed because the required "
-                       "property %1 was missing from the request.",
-            .severity = "Critical",
-            .numberOfArgs = 1,
-            .paramTypes =
-                {
-                    "string",
-                },
-            .resolution =
-                "Correct the body to include the required property with a "
-                "valid value and resubmit the request if the operation failed.",
+            "Indicates that a create was attempted on a resource but that "
+            "properties that are required for the create operation were "
+            "missing from the request.",
+            "The create operation failed because the required property %1 was "
+            "missing from the request.",
+            "Critical",
+            1,
+            {
+                "string",
+            },
+            "Correct the body to include the required property with a valid "
+            "value and resubmit the request if the operation failed.",
         }},
-    MessageEntry{
-        "CreateLimitReachedForResource",
-        {
-            .description = "Indicates that no more resources can be created on "
-                           "the resource as it has reached its create limit.",
-            .message = "The create operation failed because the resource has "
-                       "reached the limit of possible resources.",
-            .severity = "Critical",
-            .numberOfArgs = 0,
-            .paramTypes = {},
-            .resolution =
-                "Either delete resources and resubmit the request if the "
-                "operation failed or do not resubmit the request.",
-        }},
+    MessageEntry{"CreateLimitReachedForResource",
+                 {
+                     "Indicates that no more resources can be created on the "
+                     "resource as it has reached its create limit.",
+                     "The create operation failed because the resource has "
+                     "reached the limit of possible resources.",
+                     "Critical",
+                     0,
+                     {},
+                     "Either delete resources and resubmit the request if the "
+                     "operation failed or do not resubmit the request.",
+                 }},
     MessageEntry{"Created",
                  {
-                     .description =
-                         "Indicates that all conditions of a successful "
-                         "creation operation have been met.",
-                     .message = "The resource has been created successfully",
-                     .severity = "OK",
-                     .numberOfArgs = 0,
-                     .paramTypes = {},
-                     .resolution = "None",
+                     "Indicates that all conditions of a successful creation "
+                     "operation have been met.",
+                     "The resource has been created successfully",
+                     "OK",
+                     0,
+                     {},
+                     "None",
                  }},
     MessageEntry{
         "EmptyJSON",
         {
-            .description =
-                "Indicates that the request body contained an empty JSON "
-                "object when one or more properties are expected in the body.",
-            .message = "The request body submitted contained an empty JSON "
-                       "object and the service is unable to process it.",
-            .severity = "Warning",
-            .numberOfArgs = 0,
-            .paramTypes = {},
-            .resolution =
-                "Add properties in the JSON object and resubmit the request.",
+            "Indicates that the request body contained an empty JSON object "
+            "when one or more properties are expected in the body.",
+            "The request body submitted contained an empty JSON object and the "
+            "service is unable to process it.",
+            "Warning",
+            0,
+            {},
+            "Add properties in the JSON object and resubmit the request.",
         }},
     MessageEntry{
         "EventSubscriptionLimitExceeded",
         {
-            .description = "Indicates that a event subscription establishment "
-                           "has been requested but the operation failed due to "
-                           "the number of simultaneous connection exceeding "
-                           "the limit of the implementation.",
-            .message = "The event subscription failed due to the number of "
-                       "simultaneous subscriptions exceeding the limit of the "
-                       "implementation.",
-            .severity = "Critical",
-            .numberOfArgs = 0,
-            .paramTypes = {},
-            .resolution =
-                "Reduce the number of other subscriptions before trying to "
-                "establish the event subscription or increase the limit of "
-                "simultaneous subscriptions (if supported).",
+            "Indicates that a event subscription establishment has been "
+            "requested but the operation failed due to the number of "
+            "simultaneous connection exceeding the limit of the "
+            "implementation.",
+            "The event subscription failed due to the number of simultaneous "
+            "subscriptions exceeding the limit of the implementation.",
+            "Critical",
+            0,
+            {},
+            "Reduce the number of other subscriptions before trying to "
+            "establish the event subscription or increase the limit of "
+            "simultaneous subscriptions (if supported).",
         }},
     MessageEntry{
         "GeneralError",
         {
-            .description =
-                "Indicates that a general error has occurred.  Use in "
-                "ExtendedInfo is discouraged.  When used in ExtendedInfo, "
-                "implementations are expected to include a Resolution property "
-                "with this error to indicate how to resolve the problem.",
-            .message = "A general error has occurred. See Resolution for "
-                       "information on how to resolve the error.",
-            .severity = "Critical",
-            .numberOfArgs = 0,
-            .paramTypes = {},
-            .resolution = "None.",
+            "Indicates that a general error has occurred.  Use in ExtendedInfo "
+            "is discouraged.  When used in ExtendedInfo, implementations are "
+            "expected to include a Resolution property with this error to "
+            "indicate how to resolve the problem.",
+            "A general error has occurred. See Resolution for information on "
+            "how to resolve the error.",
+            "Critical",
+            0,
+            {},
+            "None.",
         }},
     MessageEntry{
         "InsufficientPrivilege",
         {
-            .description = "Indicates that the credentials associated with the "
-                           "established session do not have sufficient "
-                           "privileges for the requested operation",
-            .message = "There are insufficient privileges for the account or "
-                       "credentials associated with the current session to "
-                       "perform the requested operation.",
-            .severity = "Critical",
-            .numberOfArgs = 0,
-            .paramTypes = {},
-            .resolution =
-                "Either abandon the operation or change the associated access "
-                "rights and resubmit the request if the operation failed.",
+            "Indicates that the credentials associated with the established "
+            "session do not have sufficient privileges for the requested "
+            "operation",
+            "There are insufficient privileges for the account or credentials "
+            "associated with the current session to perform the requested "
+            "operation.",
+            "Critical",
+            0,
+            {},
+            "Either abandon the operation or change the associated access "
+            "rights and resubmit the request if the operation failed.",
         }},
     MessageEntry{
         "InternalError",
         {
-            .description =
-                "Indicates that the request failed for an unknown internal "
-                "error but that the service is still operational.",
-            .message = "The request failed due to an internal service error.  "
-                       "The service is still operational.",
-            .severity = "Critical",
-            .numberOfArgs = 0,
-            .paramTypes = {},
-            .resolution = "Resubmit the request.  If the problem persists, "
-                          "consider resetting the service.",
+            "Indicates that the request failed for an unknown internal error "
+            "but that the service is still operational.",
+            "The request failed due to an internal service error.  The service "
+            "is still operational.",
+            "Critical",
+            0,
+            {},
+            "Resubmit the request.  If the problem persists, consider "
+            "resetting the service.",
         }},
-    MessageEntry{
-        "InvalidIndex",
-        {
-            .description = "The Index is not valid.",
-            .message = "The Index %1 is not a valid offset into the array.",
-            .severity = "Warning",
-            .numberOfArgs = 1,
-            .paramTypes =
-                {
-                    "number",
-                },
-            .resolution = "Verify the index value provided is within the "
-                          "bounds of the array.",
-        }},
+    MessageEntry{"InvalidIndex",
+                 {
+                     "The Index is not valid.",
+                     "The Index %1 is not a valid offset into the array.",
+                     "Warning",
+                     1,
+                     {
+                         "number",
+                     },
+                     "Verify the index value provided is within the bounds of "
+                     "the array.",
+                 }},
     MessageEntry{
         "InvalidObject",
         {
-            .description = "Indicates that the object in question is invalid "
-                           "according to the implementation.  Examples include "
-                           "a firmware update malformed URI.",
-            .message = "The object at %1 is invalid.",
-            .severity = "Critical",
-            .numberOfArgs = 1,
-            .paramTypes =
-                {
-                    "string",
-                },
-            .resolution =
-                "Either the object is malformed or the URI is not correct.  "
-                "Correct the condition and resubmit the request if it failed.",
+            "Indicates that the object in question is invalid according to the "
+            "implementation.  Examples include a firmware update malformed "
+            "URI.",
+            "The object at %1 is invalid.",
+            "Critical",
+            1,
+            {
+                "string",
+            },
+            "Either the object is malformed or the URI is not correct.  "
+            "Correct the condition and resubmit the request if it failed.",
         }},
-    MessageEntry{
-        "MalformedJSON",
-        {
-            .description = "Indicates that the request body was malformed "
-                           "JSON.  Could be duplicate, syntax error,etc.",
-            .message = "The request body submitted was malformed JSON and "
-                       "could not be parsed by the receiving service.",
-            .severity = "Critical",
-            .numberOfArgs = 0,
-            .paramTypes = {},
-            .resolution = "Ensure that the request body is valid JSON and "
-                          "resubmit the request.",
-        }},
+    MessageEntry{"MalformedJSON",
+                 {
+                     "Indicates that the request body was malformed JSON.  "
+                     "Could be duplicate, syntax error,etc.",
+                     "The request body submitted was malformed JSON and could "
+                     "not be parsed by the receiving service.",
+                     "Critical",
+                     0,
+                     {},
+                     "Ensure that the request body is valid JSON and resubmit "
+                     "the request.",
+                 }},
     MessageEntry{
         "NoOperation",
         {
-            .description = "Indicates that the requested operation will not "
-                           "perform any changes on the service.",
-            .message = "The request body submitted contain no data to act upon "
-                       "and no changes to the resource took place.",
-            .severity = "Warning",
-            .numberOfArgs = 0,
-            .paramTypes = {},
-            .resolution =
-                "Add properties in the JSON object and resubmit the request.",
+            "Indicates that the requested operation will not perform any "
+            "changes on the service.",
+            "The request body submitted contain no data to act upon and no "
+            "changes to the resource took place.",
+            "Warning",
+            0,
+            {},
+            "Add properties in the JSON object and resubmit the request.",
         }},
     MessageEntry{
         "NoValidSession",
         {
-            .description =
-                "Indicates that the operation failed because a valid session "
-                "is required in order to access any resources.",
-            .message = "There is no valid session established with the "
-                       "implementation.",
-            .severity = "Critical",
-            .numberOfArgs = 0,
-            .paramTypes = {},
-            .resolution =
-                "Establish as session before attempting any operations.",
+            "Indicates that the operation failed because a valid session is "
+            "required in order to access any resources.",
+            "There is no valid session established with the implementation.",
+            "Critical",
+            0,
+            {},
+            "Establish as session before attempting any operations.",
         }},
-    MessageEntry{
-        "PropertyDuplicate",
-        {
-            .description = "Indicates that a duplicate property was included "
-                           "in the request body.",
-            .message = "The property %1 was duplicated in the request.",
-            .severity = "Warning",
-            .numberOfArgs = 1,
-            .paramTypes =
-                {
-                    "string",
-                },
-            .resolution = "Remove the duplicate property from the request body "
-                          "and resubmit the request if the operation failed.",
-        }},
+    MessageEntry{"PropertyDuplicate",
+                 {
+                     "Indicates that a duplicate property was included in the "
+                     "request body.",
+                     "The property %1 was duplicated in the request.",
+                     "Warning",
+                     1,
+                     {
+                         "string",
+                     },
+                     "Remove the duplicate property from the request body and "
+                     "resubmit the request if the operation failed.",
+                 }},
     MessageEntry{
         "PropertyMissing",
         {
-            .description = "Indicates that a required property was not "
-                           "supplied as part of the request.",
-            .message = "The property %1 is a required property and must be "
-                       "included in the request.",
-            .severity = "Warning",
-            .numberOfArgs = 1,
-            .paramTypes =
-                {
-                    "string",
-                },
-            .resolution =
-                "Ensure that the property is in the request body and has a "
-                "valid value and resubmit the request if the operation failed.",
+            "Indicates that a required property was not supplied as part of "
+            "the request.",
+            "The property %1 is a required property and must be included in "
+            "the request.",
+            "Warning",
+            1,
+            {
+                "string",
+            },
+            "Ensure that the property is in the request body and has a valid "
+            "value and resubmit the request if the operation failed.",
         }},
-    MessageEntry{
-        "PropertyNotWritable",
-        {
-            .description =
-                "Indicates that a property was given a value in the request "
-                "body, but the property is a readonly property.",
-            .message = "The property %1 is a read only property and cannot be "
-                       "assigned a value.",
-            .severity = "Warning",
-            .numberOfArgs = 1,
-            .paramTypes =
-                {
-                    "string",
-                },
-            .resolution = "Remove the property from the request body and "
-                          "resubmit the request if the operation failed.",
-        }},
-    MessageEntry{
-        "PropertyUnknown",
-        {
-            .description = "Indicates that an unknown property was included in "
-                           "the request body.",
-            .message = "The property %1 is not in the list of valid properties "
-                       "for the resource.",
-            .severity = "Warning",
-            .numberOfArgs = 1,
-            .paramTypes =
-                {
-                    "string",
-                },
-            .resolution = "Remove the unknown property from the request body "
-                          "and resubmit the request if the operation failed.",
-        }},
-    MessageEntry{
-        "PropertyValueFormatError",
-        {
-            .description =
-                "Indicates that a property was given the correct value type "
-                "but the value of that property was not supported.",
-            .message = "The value %1 for the property %2 is of a different "
-                       "format than the property can accept.",
-            .severity = "Warning",
-            .numberOfArgs = 2,
-            .paramTypes =
-                {
-                    "string",
-                    "string",
-                },
-            .resolution =
-                "Correct the value for the property in the request body and "
-                "resubmit the request if the operation failed.",
-        }},
+    MessageEntry{"PropertyNotWritable",
+                 {
+                     "Indicates that a property was given a value in the "
+                     "request body, but the property is a readonly property.",
+                     "The property %1 is a read only property and cannot be "
+                     "assigned a value.",
+                     "Warning",
+                     1,
+                     {
+                         "string",
+                     },
+                     "Remove the property from the request body and resubmit "
+                     "the request if the operation failed.",
+                 }},
+    MessageEntry{"PropertyUnknown",
+                 {
+                     "Indicates that an unknown property was included in the "
+                     "request body.",
+                     "The property %1 is not in the list of valid properties "
+                     "for the resource.",
+                     "Warning",
+                     1,
+                     {
+                         "string",
+                     },
+                     "Remove the unknown property from the request body and "
+                     "resubmit the request if the operation failed.",
+                 }},
+    MessageEntry{"PropertyValueFormatError",
+                 {
+                     "Indicates that a property was given the correct value "
+                     "type but the value of that property was not supported.",
+                     "The value %1 for the property %2 is of a different "
+                     "format than the property can accept.",
+                     "Warning",
+                     2,
+                     {
+                         "string",
+                         "string",
+                     },
+                     "Correct the value for the property in the request body "
+                     "and resubmit the request if the operation failed.",
+                 }},
     MessageEntry{"PropertyValueModified",
                  {
-                     .description =
-                         "Indicates that a property was given the correct "
-                         "value type but the value of that property was "
-                         "modified.  Examples are truncated or rounded values.",
-                     .message = "The property %1 was assigned the value %2 due "
-                                "to modification by the service.",
-                     .severity = "Warning",
-                     .numberOfArgs = 2,
-                     .paramTypes =
-                         {
-                             "string",
-                             "string",
-                         },
-                     .resolution = "No resolution is required.",
+                     "Indicates that a property was given the correct value "
+                     "type but the value of that property was modified.  "
+                     "Examples are truncated or rounded values.",
+                     "The property %1 was assigned the value %2 due to "
+                     "modification by the service.",
+                     "Warning",
+                     2,
+                     {
+                         "string",
+                         "string",
+                     },
+                     "No resolution is required.",
                  }},
     MessageEntry{
         "PropertyValueNotInList",
         {
-            .description = "Indicates that a property was given the correct "
-                           "value type but the value of that property was not "
-                           "supported.  This values not in an enumeration",
-            .message = "The value %1 for the property %2 is not in the list of "
-                       "acceptable values.",
-            .severity = "Warning",
-            .numberOfArgs = 2,
-            .paramTypes =
-                {
-                    "string",
-                    "string",
-                },
-            .resolution = "Choose a value from the enumeration list that the "
-                          "implementation can support and resubmit the request "
-                          "if the operation failed.",
+            "Indicates that a property was given the correct value type but "
+            "the value of that property was not supported.  This values not in "
+            "an enumeration",
+            "The value %1 for the property %2 is not in the list of acceptable "
+            "values.",
+            "Warning",
+            2,
+            {
+                "string",
+                "string",
+            },
+            "Choose a value from the enumeration list that the implementation "
+            "can support and resubmit the request if the operation failed.",
         }},
     MessageEntry{
         "PropertyValueTypeError",
         {
-            .description = "Indicates that a property was given the wrong "
-                           "value type, such as when a number is supplied for "
-                           "a property that requires a string.",
-            .message = "The value %1 for the property %2 is of a different "
-                       "type than the property can accept.",
-            .severity = "Warning",
-            .numberOfArgs = 2,
-            .paramTypes =
-                {
-                    "string",
-                    "string",
-                },
-            .resolution =
-                "Correct the value for the property in the request body and "
-                "resubmit the request if the operation failed.",
+            "Indicates that a property was given the wrong value type, such as "
+            "when a number is supplied for a property that requires a string.",
+            "The value %1 for the property %2 is of a different type than the "
+            "property can accept.",
+            "Warning",
+            2,
+            {
+                "string",
+                "string",
+            },
+            "Correct the value for the property in the request body and "
+            "resubmit the request if the operation failed.",
         }},
     MessageEntry{
         "QueryNotSupported",
         {
-            .description =
-                "Indicates that query is not supported on the implementation.",
-            .message = "Querying is not supported by the implementation.",
-            .severity = "Warning",
-            .numberOfArgs = 0,
-            .paramTypes = {},
-            .resolution = "Remove the query parameters and resubmit the "
-                          "request if the operation failed.",
+            "Indicates that query is not supported on the implementation.",
+            "Querying is not supported by the implementation.",
+            "Warning",
+            0,
+            {},
+            "Remove the query parameters and resubmit the request if the "
+            "operation failed.",
         }},
-    MessageEntry{
-        "QueryNotSupportedOnResource",
-        {
-            .description = "Indicates that query is not supported on the given "
-                           "resource, such as when a start/count query is "
-                           "attempted on a resource that is not a collection.",
-            .message = "Querying is not supported on the requested resource.",
-            .severity = "Warning",
-            .numberOfArgs = 0,
-            .paramTypes = {},
-            .resolution = "Remove the query parameters and resubmit the "
-                          "request if the operation failed.",
-        }},
+    MessageEntry{"QueryNotSupportedOnResource",
+                 {
+                     "Indicates that query is not supported on the given "
+                     "resource, such as when a start/count query is attempted "
+                     "on a resource that is not a collection.",
+                     "Querying is not supported on the requested resource.",
+                     "Warning",
+                     0,
+                     {},
+                     "Remove the query parameters and resubmit the request if "
+                     "the operation failed.",
+                 }},
     MessageEntry{
         "QueryParameterOutOfRange",
         {
-            .description = "Indicates that a query parameter was supplied that "
-                           "is out of range for the given resource.  This can "
-                           "happen with values that are too low or beyond that "
-                           "possible for the supplied resource, such as when a "
-                           "page is requested that is beyond the last page.",
-            .message =
-                "The value %1 for the query parameter %2 is out of range %3.",
-            .severity = "Warning",
-            .numberOfArgs = 3,
-            .paramTypes =
-                {
-                    "string",
-                    "string",
-                    "string",
-                },
-            .resolution =
-                "Reduce the value for the query parameter to a value that is "
-                "within range, such as a start or count value that is within "
-                "bounds of the number of resources in a collection or a page "
-                "that is within the range of valid pages.",
+            "Indicates that a query parameter was supplied that is out of "
+            "range for the given resource.  This can happen with values that "
+            "are too low or beyond that possible for the supplied resource, "
+            "such as when a page is requested that is beyond the last page.",
+            "The value %1 for the query parameter %2 is out of range %3.",
+            "Warning",
+            3,
+            {
+                "string",
+                "string",
+                "string",
+            },
+            "Reduce the value for the query parameter to a value that is "
+            "within range, such as a start or count value that is within "
+            "bounds of the number of resources in a collection or a page that "
+            "is within the range of valid pages.",
         }},
-    MessageEntry{
-        "QueryParameterValueFormatError",
-        {
-            .description =
-                "Indicates that a query parameter was given the correct value "
-                "type but the value of that parameter was not supported.  This "
-                "includes value size/length exceeded.",
-            .message = "The value %1 for the parameter %2 is of a different "
-                       "format than the parameter can accept.",
-            .severity = "Warning",
-            .numberOfArgs = 2,
-            .paramTypes =
-                {
-                    "string",
-                    "string",
-                },
-            .resolution =
-                "Correct the value for the query parameter in the request and "
-                "resubmit the request if the operation failed.",
-        }},
-    MessageEntry{
-        "QueryParameterValueTypeError",
-        {
-            .description =
-                "Indicates that a query parameter was given the wrong value "
-                "type, such as when a number is supplied for a query parameter "
-                "that requires a string.",
-            .message = "The value %1 for the query parameter %2 is of a "
-                       "different type than the parameter can accept.",
-            .severity = "Warning",
-            .numberOfArgs = 2,
-            .paramTypes =
-                {
-                    "string",
-                    "string",
-                },
-            .resolution =
-                "Correct the value for the query parameter in the request and "
-                "resubmit the request if the operation failed.",
-        }},
-    MessageEntry{
-        "ResourceAlreadyExists",
-        {
-            .description = "Indicates that a resource change or creation was "
-                           "attempted but that the operation cannot proceed "
-                           "because the resource already exists.",
-            .message = "The requested resource of type %1 with the property %2 "
-                       "with the value %3 already exists.",
-            .severity = "Critical",
-            .numberOfArgs = 3,
-            .paramTypes =
-                {
-                    "string",
-                    "string",
-                    "string",
-                },
-            .resolution = "Do not repeat the create operation as the resource "
-                          "has already been created.",
-        }},
+    MessageEntry{"QueryParameterValueFormatError",
+                 {
+                     "Indicates that a query parameter was given the correct "
+                     "value type but the value of that parameter was not "
+                     "supported.  This includes value size/length exceeded.",
+                     "The value %1 for the parameter %2 is of a different "
+                     "format than the parameter can accept.",
+                     "Warning",
+                     2,
+                     {
+                         "string",
+                         "string",
+                     },
+                     "Correct the value for the query parameter in the request "
+                     "and resubmit the request if the operation failed.",
+                 }},
+    MessageEntry{"QueryParameterValueTypeError",
+                 {
+                     "Indicates that a query parameter was given the wrong "
+                     "value type, such as when a number is supplied for a "
+                     "query parameter that requires a string.",
+                     "The value %1 for the query parameter %2 is of a "
+                     "different type than the parameter can accept.",
+                     "Warning",
+                     2,
+                     {
+                         "string",
+                         "string",
+                     },
+                     "Correct the value for the query parameter in the request "
+                     "and resubmit the request if the operation failed.",
+                 }},
+    MessageEntry{"ResourceAlreadyExists",
+                 {
+                     "Indicates that a resource change or creation was "
+                     "attempted but that the operation cannot proceed because "
+                     "the resource already exists.",
+                     "The requested resource of type %1 with the property %2 "
+                     "with the value %3 already exists.",
+                     "Critical",
+                     3,
+                     {
+                         "string",
+                         "string",
+                         "string",
+                     },
+                     "Do not repeat the create operation as the resource has "
+                     "already been created.",
+                 }},
     MessageEntry{
         "ResourceAtUriInUnknownFormat",
         {
-            .description =
-                "Indicates that the URI was valid but the resource or image at "
-                "that URI was in a format not supported by the service.",
-            .message = "The resource at %1 is in a format not recognized by "
-                       "the service.",
-            .severity = "Critical",
-            .numberOfArgs = 1,
-            .paramTypes =
-                {
-                    "string",
-                },
-            .resolution = "Place an image or resource or file that is "
-                          "recognized by the service at the URI.",
+            "Indicates that the URI was valid but the resource or image at "
+            "that URI was in a format not supported by the service.",
+            "The resource at %1 is in a format not recognized by the service.",
+            "Critical",
+            1,
+            {
+                "string",
+            },
+            "Place an image or resource or file that is recognized by the "
+            "service at the URI.",
         }},
-    MessageEntry{
-        "ResourceAtUriUnauthorized",
-        {
-            .description = "Indicates that the attempt to access the "
-                           "resource/file/image at the URI was unauthorized.",
-            .message = "While accessing the resource at %1, the service "
-                       "received an authorization error %2.",
-            .severity = "Critical",
-            .numberOfArgs = 2,
-            .paramTypes =
-                {
-                    "string",
-                    "string",
-                },
-            .resolution = "Ensure that the appropriate access is provided for "
-                          "the service in order for it to access the URI.",
-        }},
-    MessageEntry{
-        "ResourceCannotBeDeleted",
-        {
-            .description = "Indicates that a delete operation was attempted on "
-                           "a resource that cannot be deleted.",
-            .message = "The delete request failed because the resource "
-                       "requested cannot be deleted.",
-            .severity = "Critical",
-            .numberOfArgs = 0,
-            .paramTypes = {},
-            .resolution = "Do not attempt to delete a non-deletable resource.",
-        }},
+    MessageEntry{"ResourceAtUriUnauthorized",
+                 {
+                     "Indicates that the attempt to access the "
+                     "resource/file/image at the URI was unauthorized.",
+                     "While accessing the resource at %1, the service received "
+                     "an authorization error %2.",
+                     "Critical",
+                     2,
+                     {
+                         "string",
+                         "string",
+                     },
+                     "Ensure that the appropriate access is provided for the "
+                     "service in order for it to access the URI.",
+                 }},
+    MessageEntry{"ResourceCannotBeDeleted",
+                 {
+                     "Indicates that a delete operation was attempted on a "
+                     "resource that cannot be deleted.",
+                     "The delete request failed because the resource requested "
+                     "cannot be deleted.",
+                     "Critical",
+                     0,
+                     {},
+                     "Do not attempt to delete a non-deletable resource.",
+                 }},
     MessageEntry{
         "ResourceExhaustion",
         {
-            .description =
-                "Indicates that a resource could not satisfy the request due "
-                "to some unavailability of resources.  An example is that "
-                "available capacity has been allocated.",
-            .message = "The resource %1 was unable to satisfy the request due "
-                       "to unavailability of resources.",
-            .severity = "Critical",
-            .numberOfArgs = 1,
-            .paramTypes =
-                {
-                    "string",
-                },
-            .resolution = "Ensure that the resources are available and "
-                          "resubmit the request.",
+            "Indicates that a resource could not satisfy the request due to "
+            "some unavailability of resources.  An example is that available "
+            "capacity has been allocated.",
+            "The resource %1 was unable to satisfy the request due to "
+            "unavailability of resources.",
+            "Critical",
+            1,
+            {
+                "string",
+            },
+            "Ensure that the resources are available and resubmit the request.",
         }},
-    MessageEntry{
-        "ResourceInStandby",
-        {
-            .description = "Indicates that the request could not be performed "
-                           "because the resource is in standby.",
-            .message = "The request could not be performed because the "
-                       "resource is in standby.",
-            .severity = "Critical",
-            .numberOfArgs = 0,
-            .paramTypes = {},
-            .resolution = "Ensure that the resource is in the correct power "
-                          "state and resubmit the request.",
-        }},
-    MessageEntry{
-        "ResourceInUse",
-        {
-            .description = "Indicates that a change was requested to a "
-                           "resource but the change was rejected due to the "
-                           "resource being in use or transition.",
-            .message = "The change to the requested resource failed because "
-                       "the resource is in use or in transition.",
-            .severity = "Warning",
-            .numberOfArgs = 0,
-            .paramTypes = {},
-            .resolution = "Remove the condition and resubmit the request if "
-                          "the operation failed.",
-        }},
+    MessageEntry{"ResourceInStandby",
+                 {
+                     "Indicates that the request could not be performed "
+                     "because the resource is in standby.",
+                     "The request could not be performed because the resource "
+                     "is in standby.",
+                     "Critical",
+                     0,
+                     {},
+                     "Ensure that the resource is in the correct power state "
+                     "and resubmit the request.",
+                 }},
+    MessageEntry{"ResourceInUse",
+                 {
+                     "Indicates that a change was requested to a resource but "
+                     "the change was rejected due to the resource being in use "
+                     "or transition.",
+                     "The change to the requested resource failed because the "
+                     "resource is in use or in transition.",
+                     "Warning",
+                     0,
+                     {},
+                     "Remove the condition and resubmit the request if the "
+                     "operation failed.",
+                 }},
     MessageEntry{
         "ResourceMissingAtURI",
         {
-            .description =
-                "Indicates that the operation expected an image or other "
-                "resource at the provided URI but none was found.  Examples of "
-                "this are in requests that require URIs like Firmware Update.",
-            .message = "The resource at the URI %1 was not found.",
-            .severity = "Critical",
-            .numberOfArgs = 1,
-            .paramTypes =
-                {
-                    "string",
-                },
-            .resolution = "Place a valid resource at the URI or correct the "
-                          "URI and resubmit the request.",
+            "Indicates that the operation expected an image or other resource "
+            "at the provided URI but none was found.  Examples of this are in "
+            "requests that require URIs like Firmware Update.",
+            "The resource at the URI %1 was not found.",
+            "Critical",
+            1,
+            {
+                "string",
+            },
+            "Place a valid resource at the URI or correct the URI and resubmit "
+            "the request.",
         }},
     MessageEntry{
         "ResourceNotFound",
         {
-            .description = "Indicates that the operation expected a resource "
-                           "identifier that corresponds to an existing "
-                           "resource but one was not found.",
-            .message =
-                "The requested resource of type %1 named %2 was not found.",
-            .severity = "Critical",
-            .numberOfArgs = 2,
-            .paramTypes =
-                {
-                    "string",
-                    "string",
-                },
-            .resolution =
-                "Provide a valid resource identifier and resubmit the request.",
+            "Indicates that the operation expected a resource identifier that "
+            "corresponds to an existing resource but one was not found.",
+            "The requested resource of type %1 named %2 was not found.",
+            "Critical",
+            2,
+            {
+                "string",
+                "string",
+            },
+            "Provide a valid resource identifier and resubmit the request.",
         }},
     MessageEntry{
         "ResourceTypeIncompatible",
         {
-            .description =
-                "Indicates that the resource type of the operation does not "
-                "match that for the operation destination.  Examples of when "
-                "this can happen include during a POST to a collection using "
-                "the wrong resource type, an update where the @odata.types do "
-                "not match or on a major version incompatability.",
-            .message = "The @odata.type of the request body %1 is incompatible "
-                       "with the @odata.type of the resource which is %2.",
-            .severity = "Critical",
-            .numberOfArgs = 2,
-            .paramTypes =
-                {
-                    "string",
-                    "string",
-                },
-            .resolution = "Resubmit the request with a payload compatible with "
-                          "the resource's schema.",
+            "Indicates that the resource type of the operation does not match "
+            "that for the operation destination.  Examples of when this can "
+            "happen include during a POST to a collection using the wrong "
+            "resource type, an update where the @odata.types do not match or "
+            "on a major version incompatability.",
+            "The @odata.type of the request body %1 is incompatible with the "
+            "@odata.type of the resource which is %2.",
+            "Critical",
+            2,
+            {
+                "string",
+                "string",
+            },
+            "Resubmit the request with a payload compatible with the "
+            "resource's schema.",
         }},
     MessageEntry{
         "ServiceInUnknownState",
         {
-            .description =
-                "Indicates that the operation failed because the service is in "
-                "an unknown state and cannot accept additional requests.",
-            .message =
-                "The operation failed because the service is in an unknown "
-                "state and can no longer take incoming requests.",
-            .severity = "Critical",
-            .numberOfArgs = 0,
-            .paramTypes = {},
-            .resolution = "Restart the service and resubmit the request if the "
-                          "operation failed.",
+            "Indicates that the operation failed because the service is in an "
+            "unknown state and cannot accept additional requests.",
+            "The operation failed because the service is in an unknown state "
+            "and can no longer take incoming requests.",
+            "Critical",
+            0,
+            {},
+            "Restart the service and resubmit the request if the operation "
+            "failed.",
         }},
-    MessageEntry{
-        "ServiceShuttingDown",
-        {
-            .description =
-                "Indicates that the operation failed as the service is "
-                "shutting down, such as when the service reboots.",
-            .message = "The operation failed because the service is shutting "
-                       "down and can no longer take incoming requests.",
-            .severity = "Critical",
-            .numberOfArgs = 0,
-            .paramTypes = {},
-            .resolution = "When the service becomes available, resubmit the "
-                          "request if the operation failed.",
-        }},
+    MessageEntry{"ServiceShuttingDown",
+                 {
+                     "Indicates that the operation failed as the service is "
+                     "shutting down, such as when the service reboots.",
+                     "The operation failed because the service is shutting "
+                     "down and can no longer take incoming requests.",
+                     "Critical",
+                     0,
+                     {},
+                     "When the service becomes available, resubmit the request "
+                     "if the operation failed.",
+                 }},
     MessageEntry{
         "ServiceTemporarilyUnavailable",
         {
-            .description = "Indicates the service is temporarily unavailable.",
-            .message =
-                "The service is temporarily unavailable.  Retry in %1 seconds.",
-            .severity = "Critical",
-            .numberOfArgs = 1,
-            .paramTypes =
-                {
-                    "string",
-                },
-            .resolution = "Wait for the indicated retry duration and retry the "
-                          "operation.",
+            "Indicates the service is temporarily unavailable.",
+            "The service is temporarily unavailable.  Retry in %1 seconds.",
+            "Critical",
+            1,
+            {
+                "string",
+            },
+            "Wait for the indicated retry duration and retry the operation.",
         }},
     MessageEntry{
         "SessionLimitExceeded",
         {
-            .description =
-                "Indicates that a session establishment has been requested but "
-                "the operation failed due to the number of simultaneous "
-                "sessions exceeding the limit of the implementation.",
-            .message = "The session establishment failed due to the number of "
-                       "simultaneous sessions exceeding the limit of the "
-                       "implementation.",
-            .severity = "Critical",
-            .numberOfArgs = 0,
-            .paramTypes = {},
-            .resolution = "Reduce the number of other sessions before trying "
-                          "to establish the session or increase the limit of "
-                          "simultaneous sessions (if supported).",
+            "Indicates that a session establishment has been requested but the "
+            "operation failed due to the number of simultaneous sessions "
+            "exceeding the limit of the implementation.",
+            "The session establishment failed due to the number of "
+            "simultaneous sessions exceeding the limit of the implementation.",
+            "Critical",
+            0,
+            {},
+            "Reduce the number of other sessions before trying to establish "
+            "the session or increase the limit of simultaneous sessions (if "
+            "supported).",
         }},
     MessageEntry{
         "SessionTerminated",
         {
-            .description =
-                "Indicates that the DELETE operation on the Session resource "
-                "resulted in the successful termination of the session.",
-            .message = "The session was successfully terminated.",
-            .severity = "OK",
-            .numberOfArgs = 0,
-            .paramTypes = {},
-            .resolution = "No resolution is required.",
+            "Indicates that the DELETE operation on the Session resource "
+            "resulted in the successful termination of the session.",
+            "The session was successfully terminated.",
+            "OK",
+            0,
+            {},
+            "No resolution is required.",
         }},
     MessageEntry{
         "SourceDoesNotSupportProtocol",
         {
-            .description =
-                "Indicates that while attempting to access, connect to or "
-                "transfer a resource/file/image from another location that the "
-                "other end of the connection did not support the protocol",
-            .message = "The other end of the connection at %1 does not support "
-                       "the specified protocol %2.",
-            .severity = "Critical",
-            .numberOfArgs = 2,
-            .paramTypes =
-                {
-                    "string",
-                    "string",
-                },
-            .resolution = "Change protocols or URIs. ",
+            "Indicates that while attempting to access, connect to or transfer "
+            "a resource/file/image from another location that the other end of "
+            "the connection did not support the protocol",
+            "The other end of the connection at %1 does not support the "
+            "specified protocol %2.",
+            "Critical",
+            2,
+            {
+                "string",
+                "string",
+            },
+            "Change protocols or URIs. ",
         }},
-    MessageEntry{
-        "StringValueTooLong",
-        {
-            .description =
-                "Indicates that a string value passed to the given resource "
-                "exceeded its length limit. An example is when a shorter limit "
-                "is imposed by an implementation than that allowed by the "
-                "specification.",
-            .message = "The string %1 exceeds the length limit %2.",
-            .severity = "Warning",
-            .numberOfArgs = 2,
-            .paramTypes =
-                {
-                    "string",
-                    "number",
-                },
-            .resolution =
-                "Resubmit the request with an appropriate string length.",
-        }},
+    MessageEntry{"StringValueTooLong",
+                 {
+                     "Indicates that a string value passed to the given "
+                     "resource exceeded its length limit. An example is when a "
+                     "shorter limit is imposed by an implementation than that "
+                     "allowed by the specification.",
+                     "The string %1 exceeds the length limit %2.",
+                     "Warning",
+                     2,
+                     {
+                         "string",
+                         "number",
+                     },
+                     "Resubmit the request with an appropriate string length.",
+                 }},
     MessageEntry{"Success",
                  {
-                     .description = "Indicates that all conditions of a "
-                                    "successful operation have been met.",
-                     .message = "Successfully Completed Request",
-                     .severity = "OK",
-                     .numberOfArgs = 0,
-                     .paramTypes = {},
-                     .resolution = "None",
+                     "Indicates that all conditions of a successful operation "
+                     "have been met.",
+                     "Successfully Completed Request",
+                     "OK",
+                     0,
+                     {},
+                     "None",
                  }},
     MessageEntry{
         "UnrecognizedRequestBody",
         {
-            .description = "Indicates that the service encountered an "
-                           "unrecognizable request body that could not even be "
-                           "interpreted as malformed JSON.",
-            .message = "The service detected a malformed request body that it "
-                       "was unable to interpret.",
-            .severity = "Warning",
-            .numberOfArgs = 0,
-            .paramTypes = {},
-            .resolution = "Correct the request body and resubmit the request "
-                          "if it failed.",
+            "Indicates that the service encountered an unrecognizable request "
+            "body that could not even be interpreted as malformed JSON.",
+            "The service detected a malformed request body that it was unable "
+            "to interpret.",
+            "Warning",
+            0,
+            {},
+            "Correct the request body and resubmit the request if it failed.",
         }},
 };
 } // namespace redfish::message_registries::base
diff --git a/redfish-core/include/registries/openbmc_message_registry.hpp b/redfish-core/include/registries/openbmc_message_registry.hpp
index c3ec266..3b577949 100644
--- a/redfish-core/include/registries/openbmc_message_registry.hpp
+++ b/redfish-core/include/registries/openbmc_message_registry.hpp
@@ -19,1512 +19,1410 @@
 namespace redfish::message_registries::openbmc
 {
 const Header header = {
-    .copyright = "Copyright 2018 OpenBMC. All rights reserved.",
-    .type = "#MessageRegistry.v1_0_0.MessageRegistry",
-    .id = "OpenBMC.0.1.0",
-    .name = "OpenBMC Message Registry",
-    .language = "en",
-    .description = "This registry defines the base messages for OpenBMC.",
-    .registryPrefix = "OpenBMC",
-    .registryVersion = "0.1.0",
-    .owningEntity = "OpenBMC",
+    "Copyright 2018 OpenBMC. All rights reserved.",
+    "#MessageRegistry.v1_0_0.MessageRegistry",
+    "OpenBMC.0.1.0",
+    "OpenBMC Message Registry",
+    "en",
+    "This registry defines the base messages for OpenBMC.",
+    "OpenBMC",
+    "0.1.0",
+    "OpenBMC",
 };
-const std::array registry = {
+const std::array<MessageEntry, 114> registry = {
     MessageEntry{
         "ADDDCCorrectable",
         {
-            .description = "Indicates an ADDDC Correctable Error.",
-            .message =
-                "ADDDC Correctable Error.Socket=%1 Channel=%2 DIMM=%3 Rank=%4.",
-            .severity = "Warning",
-            .numberOfArgs = 4,
-            .paramTypes =
-                {
-                    "number",
-                    "string",
-                    "number",
-                    "number",
-                },
-            .resolution = "None.",
+            "Indicates an ADDDC Correctable Error.",
+            "ADDDC Correctable Error.Socket=%1 Channel=%2 DIMM=%3 Rank=%4.",
+            "Warning",
+            4,
+            {
+                "number",
+                "string",
+                "number",
+                "number",
+            },
+            "None.",
         }},
     MessageEntry{
         "BIOSBoot",
         {
-            .description =
-                "Indicates BIOS has transitioned control to the OS Loader.",
-            .message = "BIOS System Boot.",
-            .severity = "OK",
-            .numberOfArgs = 0,
-            .paramTypes = {},
-            .resolution = "None.",
+            "Indicates BIOS has transitioned control to the OS Loader.",
+            "BIOS System Boot.",
+            "OK",
+            0,
+            {},
+            "None.",
         }},
-    MessageEntry{
-        "BIOSPOSTError",
-        {
-            .description = "Indicates BIOS POST has encountered an error.",
-            .message = "BIOS POST Error. Error Code=%1",
-            .severity = "Warning",
-            .numberOfArgs = 1,
-            .paramTypes = {"number"},
-            .resolution = "None.",
-        }},
+    MessageEntry{"BIOSPOSTError",
+                 {
+                     "Indicates BIOS POST has encountered an error.",
+                     "BIOS POST Error. Error Code=%1",
+                     "Warning",
+                     1,
+                     {"number"},
+                     "None.",
+                 }},
     MessageEntry{"BIOSRecoveryComplete",
                  {
-                     .description = "Indicates BIOS Recovery has completed.",
-                     .message = "BIOS Recovery Complete.",
-                     .severity = "OK",
-                     .numberOfArgs = 0,
-                     .paramTypes = {},
-                     .resolution = "None.",
+                     "Indicates BIOS Recovery has completed.",
+                     "BIOS Recovery Complete.",
+                     "OK",
+                     0,
+                     {},
+                     "None.",
                  }},
     MessageEntry{"BIOSRecoveryStart",
                  {
-                     .description = "Indicates BIOS Recovery has started.",
-                     .message = "BIOS Recovery Start.",
-                     .severity = "Warning",
-                     .numberOfArgs = 0,
-                     .paramTypes = {},
-                     .resolution = "None.",
+                     "Indicates BIOS Recovery has started.",
+                     "BIOS Recovery Start.",
+                     "Warning",
+                     0,
+                     {},
+                     "None.",
                  }},
     MessageEntry{"CPUError",
                  {
-                     .description = "Indicates that a CPU Error occurred of "
-                                    "the specified type or cause.",
-                     .message = "CPU Error Occurred: %1.",
-                     .severity = "Critical",
-                     .numberOfArgs = 1,
-                     .paramTypes = {"string"},
-                     .resolution = "None.",
+                     "Indicates that a CPU Error occurred of "
+                     "the specified type or cause.",
+                     "CPU Error Occurred: %1.",
+                     "Critical",
+                     1,
+                     {"string"},
+                     "None.",
                  }},
     MessageEntry{"CPUThermalTrip",
                  {
-                     .description = "Indicates that the specified CPU thermal "
-                                    "trip has been asserted.",
-                     .message = "CPU %1 Thermal Trip.",
-                     .severity = "Critical",
-                     .numberOfArgs = 1,
-                     .paramTypes = {"number"},
-                     .resolution = "None.",
+                     "Indicates that the specified CPU thermal "
+                     "trip has been asserted.",
+                     "CPU %1 Thermal Trip.",
+                     "Critical",
+                     1,
+                     {"number"},
+                     "None.",
                  }},
-    MessageEntry{
-        "DCPowerOff",
-        {
-            .description = "Indicates that the system DC power is off.",
-            .message = "Host system DC power is off",
-            .severity = "OK",
-            .numberOfArgs = 0,
-            .paramTypes = {},
-            .resolution = "None.",
-        }},
+    MessageEntry{"DCPowerOff",
+                 {
+                     "Indicates that the system DC power is off.",
+                     "Host system DC power is off",
+                     "OK",
+                     0,
+                     {},
+                     "None.",
+                 }},
     MessageEntry{"DCPowerOn",
                  {
-                     .description = "Indicates that the system DC power is on.",
-                     .message = "Host system DC power is on",
-                     .severity = "OK",
-                     .numberOfArgs = 0,
-                     .paramTypes = {},
-                     .resolution = "None.",
+                     "Indicates that the system DC power is on.",
+                     "Host system DC power is on",
+                     "OK",
+                     0,
+                     {},
+                     "None.",
                  }},
-    MessageEntry{
-        "EventLogCleared",
-        {
-            .description = "Indicates that the event log has been cleared.",
-            .message = "Event Log Cleared.",
-            .severity = "OK",
-            .numberOfArgs = 0,
-            .paramTypes = {},
-            .resolution = "None.",
-        }},
-    MessageEntry{
-        "FanInserted",
-        {
-            .description = "Indicates that a system fan has been inserted.",
-            .message = "%1 inserted.",
-            .severity = "OK",
-            .numberOfArgs = 1,
-            .paramTypes = {"string"},
-            .resolution = "None.",
-        }},
+    MessageEntry{"EventLogCleared",
+                 {
+                     "Indicates that the event log has been cleared.",
+                     "Event Log Cleared.",
+                     "OK",
+                     0,
+                     {},
+                     "None.",
+                 }},
+    MessageEntry{"FanInserted",
+                 {
+                     "Indicates that a system fan has been inserted.",
+                     "%1 inserted.",
+                     "OK",
+                     1,
+                     {"string"},
+                     "None.",
+                 }},
     MessageEntry{"FanRedundancyLost",
                  {
-                     .description =
-                         "Indicates that system fan redundancy has been lost.",
-                     .message = "Fan redundancy lost.",
-                     .severity = "Warning",
-                     .numberOfArgs = 0,
-                     .paramTypes = {},
-                     .resolution = "None.",
+                     "Indicates that system fan redundancy has been lost.",
+                     "Fan redundancy lost.",
+                     "Warning",
+                     0,
+                     {},
+                     "None.",
                  }},
-    MessageEntry{
-        "FanRedundancyRegained",
-        {
-            .description =
-                "Indicates that system fan redundancy has been regained.",
-            .message = "Fan redundancy regained.",
-            .severity = "OK",
-            .numberOfArgs = 0,
-            .paramTypes = {},
-            .resolution = "None.",
-        }},
-    MessageEntry{
-        "FanRemoved",
-        {
-            .description = "Indicates that a system fan has been removed.",
-            .message = "%1 removed.",
-            .severity = "OK",
-            .numberOfArgs = 1,
-            .paramTypes = {"string"},
-            .resolution = "None.",
-        }},
-    MessageEntry{
-        "FirmwareUpdateCompleted",
-        {
-            .description =
-                "Indicates a firmware update has completed successfully.",
-            .message = "%1 firmware update to version %2 completed "
-                       "successfully.",
-            .severity = "OK",
-            .numberOfArgs = 2,
-            .paramTypes = {"string", "string"},
-            .resolution = "None.",
-        }},
+    MessageEntry{"FanRedundancyRegained",
+                 {
+                     "Indicates that system fan redundancy has been regained.",
+                     "Fan redundancy regained.",
+                     "OK",
+                     0,
+                     {},
+                     "None.",
+                 }},
+    MessageEntry{"FanRemoved",
+                 {
+                     "Indicates that a system fan has been removed.",
+                     "%1 removed.",
+                     "OK",
+                     1,
+                     {"string"},
+                     "None.",
+                 }},
+    MessageEntry{"FirmwareUpdateCompleted",
+                 {
+                     "Indicates a firmware update has completed successfully.",
+                     "%1 firmware update to version %2 completed "
+                     "successfully.",
+                     "OK",
+                     2,
+                     {"string", "string"},
+                     "None.",
+                 }},
     MessageEntry{"FirmwareUpdateFailed",
                  {
-                     .description = "Indicates a firmware update has failed.",
-                     .message = "%1 firmware update to version %2 failed.",
-                     .severity = "Warning",
-                     .numberOfArgs = 2,
-                     .paramTypes = {"string", "string"},
-                     .resolution = "None.",
+                     "Indicates a firmware update has failed.",
+                     "%1 firmware update to version %2 failed.",
+                     "Warning",
+                     2,
+                     {"string", "string"},
+                     "None.",
                  }},
     MessageEntry{"FirmwareUpdateStarted",
                  {
-                     .description = "Indicates a firmware update has started.",
-                     .message = "%1 firmware update to version %2 started.",
-                     .severity = "OK",
-                     .numberOfArgs = 2,
-                     .paramTypes = {"string", "string"},
-                     .resolution = "None.",
+                     "Indicates a firmware update has started.",
+                     "%1 firmware update to version %2 started.",
+                     "OK",
+                     2,
+                     {"string", "string"},
+                     "None.",
                  }},
     MessageEntry{
         "GeneralFirmwareSecurityViolation",
         {
-            .description =
-                "Indicates a general firmware security violation has occurred.",
-            .message = "Firmware security violation: %1.",
-            .severity = "Critical",
-            .numberOfArgs = 1,
-            .paramTypes = {"string"},
-            .resolution = "None.",
+            "Indicates a general firmware security violation has occurred.",
+            "Firmware security violation: %1.",
+            "Critical",
+            1,
+            {"string"},
+            "None.",
         }},
-    MessageEntry{
-        "InvalidLoginAttempted",
-        {
-            .description =
-                "Indicates that a login was attempted on the specified "
-                "interface with an invalid username or password.",
-            .message = "Invalid username or password attempted on %1.",
-            .severity = "Warning",
-            .numberOfArgs = 1,
-            .paramTypes = {"string"},
-            .resolution = "None.",
-        }},
+    MessageEntry{"InvalidLoginAttempted",
+                 {
+                     "Indicates that a login was attempted on the specified "
+                     "interface with an invalid username or password.",
+                     "Invalid username or password attempted on %1.",
+                     "Warning",
+                     1,
+                     {"string"},
+                     "None.",
+                 }},
     MessageEntry{
         "InventoryAdded",
         {
-            .description =
-                "Indicates that an inventory item with the specified model, "
-                "type, and serial number was installed.",
-            .message = "%1 %2 with serial number %3 was installed.",
-            .severity = "OK",
-            .numberOfArgs = 3,
-            .paramTypes =
-                {
-                    "string",
-                    "string",
-                    "string",
-                },
-            .resolution = "None.",
+            "Indicates that an inventory item with the specified model, "
+            "type, and serial number was installed.",
+            "%1 %2 with serial number %3 was installed.",
+            "OK",
+            3,
+
+            {
+                "string",
+                "string",
+                "string",
+            },
+            "None.",
         }},
     MessageEntry{
         "InventoryRemoved",
         {
-            .description =
-                "Indicates that an inventory item with the specified model, "
-                "type, and serial number was removed.",
-            .message = "%1 %2 with serial number %3 was removed.",
-            .severity = "OK",
-            .numberOfArgs = 3,
-            .paramTypes =
-                {
-                    "string",
-                    "string",
-                    "string",
-                },
-            .resolution = "None.",
+            "Indicates that an inventory item with the specified model, "
+            "type, and serial number was removed.",
+            "%1 %2 with serial number %3 was removed.",
+            "OK",
+            3,
+
+            {
+                "string",
+                "string",
+                "string",
+            },
+            "None.",
         }},
     MessageEntry{
         "IntelUPILinkWidthReducedToHalf",
         {
-            .description =
-                "Indicates Intel UPI link width has reduced to half width.",
-            .message = "Intel UPI link width reduced to half. Node=%1.",
-            .severity = "Warning",
-            .numberOfArgs = 1,
-            .paramTypes =
-                {
-                    "number",
-                },
-            .resolution = "None.",
+            "Indicates Intel UPI link width has reduced to half width.",
+            "Intel UPI link width reduced to half. Node=%1.",
+            "Warning",
+            1,
+
+            {
+                "number",
+            },
+            "None.",
         }},
     MessageEntry{
         "IntelUPILinkWidthReducedToQuarter",
         {
-            .description =
-                "Indicates Intel UPI link width has reduced to quarter width.",
-            .message = "Intel UPI link width reduced to quarter. Node=%1.",
-            .severity = "Warning",
-            .numberOfArgs = 1,
-            .paramTypes =
-                {
-                    "number",
-                },
-            .resolution = "None.",
+            "Indicates Intel UPI link width has reduced to quarter width.",
+            "Intel UPI link width reduced to quarter. Node=%1.",
+            "Warning",
+            1,
+
+            {
+                "number",
+            },
+            "None.",
         }},
 
-    MessageEntry{
-        "IPMIWatchdog",
-        {
-            .description = "Indicates that there is a host watchdog event.",
-            .message = "Host Watchdog Event: %1",
-            .severity = "OK",
-            .numberOfArgs = 1,
-            .paramTypes =
-                {
-                    "string",
-                },
-            .resolution = "None.",
-        }},
+    MessageEntry{"IPMIWatchdog",
+                 {
+                     "Indicates that there is a host watchdog event.",
+                     "Host Watchdog Event: %1",
+                     "OK",
+                     1,
 
-    MessageEntry{
-        "LegacyPCIPERR",
-        {
-            .description = "Indicates a Legacy PCI PERR.",
-            .message = "Legacy PCI PERR. Bus=%1 Device=%2 Function=%3.",
-            .severity = "Warning",
-            .numberOfArgs = 3,
-            .paramTypes =
-                {
-                    "number",
-                    "number",
-                    "number",
-                },
-            .resolution = "None.",
-        }},
-    MessageEntry{
-        "LegacyPCISERR",
-        {
-            .description = "Indicates a Legacy PCI SERR.",
-            .message = "Legacy PCI SERR. Bus=%1 Device=%2 Function=%3.",
-            .severity = "Critical",
-            .numberOfArgs = 3,
-            .paramTypes =
-                {
-                    "number",
-                    "number",
-                    "number",
-                },
-            .resolution = "None.",
-        }},
+                     {
+                         "string",
+                     },
+                     "None.",
+                 }},
+
+    MessageEntry{"LegacyPCIPERR",
+                 {
+                     "Indicates a Legacy PCI PERR.",
+                     "Legacy PCI PERR. Bus=%1 Device=%2 Function=%3.",
+                     "Warning",
+                     3,
+
+                     {
+                         "number",
+                         "number",
+                         "number",
+                     },
+                     "None.",
+                 }},
+    MessageEntry{"LegacyPCISERR",
+                 {
+                     "Indicates a Legacy PCI SERR.",
+                     "Legacy PCI SERR. Bus=%1 Device=%2 Function=%3.",
+                     "Critical",
+                     3,
+
+                     {
+                         "number",
+                         "number",
+                         "number",
+                     },
+                     "None.",
+                 }},
     MessageEntry{"ManufacturingModeEntered",
                  {
-                     .description = "Indicates that Factory, Manufacturing, or "
-                                    "Test mode has been entered.",
-                     .message = "Entered Manufacturing Mode.",
-                     .severity = "Warning",
-                     .numberOfArgs = 0,
-                     .paramTypes = {},
-                     .resolution = "None.",
+                     "Indicates that Factory, Manufacturing, or "
+                     "Test mode has been entered.",
+                     "Entered Manufacturing Mode.",
+                     "Warning",
+                     0,
+                     {},
+                     "None.",
                  }},
     MessageEntry{"MemoryECCCorrectable",
                  {
-                     .description = "Indicates a Correctable Memory ECC error.",
-                     .message = "Memory ECC correctable error. Socket=%1 "
-                                "Channel=%2 DIMM=%3 Rank=%4.",
-                     .severity = "Warning",
-                     .numberOfArgs = 4,
-                     .paramTypes =
-                         {
-                             "number",
-                             "string",
-                             "number",
-                             "number",
-                         },
-                     .resolution = "None.",
+                     "Indicates a Correctable Memory ECC error.",
+                     "Memory ECC correctable error. Socket=%1 "
+                     "Channel=%2 DIMM=%3 Rank=%4.",
+                     "Warning",
+                     4,
+
+                     {
+                         "number",
+                         "string",
+                         "number",
+                         "number",
+                     },
+                     "None.",
                  }},
-    MessageEntry{
-        "MemoryECCUncorrectable",
-        {
-            .description = "Indicates an Uncorrectable Memory ECC error.",
-            .message = "Memory ECC uncorrectable error. Socket=%1 Channel=%2 "
-                       "DIMM=%3 Rank=%4.",
-            .severity = "Critical",
-            .numberOfArgs = 4,
-            .paramTypes =
-                {
-                    "number",
-                    "string",
-                    "number",
-                    "number",
-                },
-            .resolution = "None.",
-        }},
-    MessageEntry{
-        "MemoryParityCommandAndAddress",
-        {
-            .description = "Indicates a Command and Address parity error.",
-            .message = "Command and Address parity error. Socket=%1 Channel=%2 "
-                       "DIMM=%3 ChannelValid=%4 DIMMValid=%5.",
-            .severity = "Critical",
-            .numberOfArgs = 5,
-            .paramTypes =
-                {
-                    "number",
-                    "string",
-                    "number",
-                    "number",
-                    "number",
-                },
-            .resolution = "None.",
-        }},
+    MessageEntry{"MemoryECCUncorrectable",
+                 {
+                     "Indicates an Uncorrectable Memory ECC error.",
+                     "Memory ECC uncorrectable error. Socket=%1 Channel=%2 "
+                     "DIMM=%3 Rank=%4.",
+                     "Critical",
+                     4,
+
+                     {
+                         "number",
+                         "string",
+                         "number",
+                         "number",
+                     },
+                     "None.",
+                 }},
+    MessageEntry{"MemoryParityCommandAndAddress",
+                 {
+                     "Indicates a Command and Address parity error.",
+                     "Command and Address parity error. Socket=%1 Channel=%2 "
+                     "DIMM=%3 ChannelValid=%4 DIMMValid=%5.",
+                     "Critical",
+                     5,
+
+                     {
+                         "number",
+                         "string",
+                         "number",
+                         "number",
+                         "number",
+                     },
+                     "None.",
+                 }},
     MessageEntry{"MemoryParityNotKnown",
                  {
-                     .description = "Indicates an unknown parity error.",
-                     .message = "Memory parity error. Socket=%1 Channel=%2 "
-                                "DIMM=%3 ChannelValid=%4 DIMMValid=%5.",
-                     .severity = "Critical",
-                     .numberOfArgs = 5,
-                     .paramTypes =
-                         {
-                             "number",
-                             "string",
-                             "number",
-                             "number",
-                             "number",
-                         },
-                     .resolution = "None.",
+                     "Indicates an unknown parity error.",
+                     "Memory parity error. Socket=%1 Channel=%2 "
+                     "DIMM=%3 ChannelValid=%4 DIMMValid=%5.",
+                     "Critical",
+                     5,
+
+                     {
+                         "number",
+                         "string",
+                         "number",
+                         "number",
+                         "number",
+                     },
+                     "None.",
                  }},
-    MessageEntry{
-        "MemoryRASConfigurationDisabled",
-        {
-            .description =
-                "Indicates Memory RAS Disabled Configuration Status.",
-            .message = "Memory RAS Configuration Disabled. Error=%1 Mode=%2.",
-            .severity = "OK",
-            .numberOfArgs = 2,
-            .paramTypes =
-                {
-                    "string",
-                    "string",
-                },
-            .resolution = "None.",
-        }},
-    MessageEntry{
-        "MemoryRASConfigurationEnabled",
-        {
-            .description = "Indicates Memory RAS Enabled Configuration Status.",
-            .message = "Memory RAS Configuration Enabled. Error=%1 Mode=%2.",
-            .severity = "OK",
-            .numberOfArgs = 2,
-            .paramTypes =
-                {
-                    "string",
-                    "string",
-                },
-            .resolution = "None.",
-        }},
-    MessageEntry{
-        "MemoryRASModeDisabled",
-        {
-            .description = "Indicates Memory RAS Disabled Mode Selection.",
-            .message = "Memory RAS Mode Select Disabled. Prior Mode=%1 "
-                       "Selected Mode=%2.",
-            .severity = "OK",
-            .numberOfArgs = 2,
-            .paramTypes =
-                {
-                    "string",
-                    "string",
-                },
-            .resolution = "None.",
-        }},
-    MessageEntry{
-        "MemoryRASModeEnabled",
-        {
-            .description = "Indicates Memory RAS Enabled Mode Selection.",
-            .message = "Memory RAS Mode Select Enabled. Prior Mode=%1 Selected "
-                       "Mode=%2.",
-            .severity = "OK",
-            .numberOfArgs = 2,
-            .paramTypes =
-                {
-                    "string",
-                    "string",
-                },
-            .resolution = "None.",
-        }},
-    MessageEntry{
-        "MemoryThermTrip",
-        {
-            .description =
-                "Indicates that the system memory ThermTrip is asserted.",
-            .message = "Memory ThermTrip asserted.",
-            .severity = "Critical",
-            .numberOfArgs = 0,
-            .paramTypes = {},
-            .resolution = "None.",
-        }},
-    MessageEntry{
-        "MirroringRedundancyDegraded",
-        {
-            .description =
-                "Indicates the mirroring redundancy state is degraded.",
-            .message = "Mirroring redundancy state degraded. Socket=%1 "
-                       "Channel=%2 DIMM=%3 Pair=%4 Rank=%5.",
-            .severity = "Warning",
-            .numberOfArgs = 5,
-            .paramTypes =
-                {
-                    "number",
-                    "string",
-                    "number",
-                    "number",
-                    "number",
-                },
-            .resolution = "None.",
-        }},
+    MessageEntry{"MemoryRASConfigurationDisabled",
+                 {
+                     "Indicates Memory RAS Disabled Configuration Status.",
+                     "Memory RAS Configuration Disabled. Error=%1 Mode=%2.",
+                     "OK",
+                     2,
+
+                     {
+                         "string",
+                         "string",
+                     },
+                     "None.",
+                 }},
+    MessageEntry{"MemoryRASConfigurationEnabled",
+                 {
+                     "Indicates Memory RAS Enabled Configuration Status.",
+                     "Memory RAS Configuration Enabled. Error=%1 Mode=%2.",
+                     "OK",
+                     2,
+
+                     {
+                         "string",
+                         "string",
+                     },
+                     "None.",
+                 }},
+    MessageEntry{"MemoryRASModeDisabled",
+                 {
+                     "Indicates Memory RAS Disabled Mode Selection.",
+                     "Memory RAS Mode Select Disabled. Prior Mode=%1 "
+                     "Selected Mode=%2.",
+                     "OK",
+                     2,
+
+                     {
+                         "string",
+                         "string",
+                     },
+                     "None.",
+                 }},
+    MessageEntry{"MemoryRASModeEnabled",
+                 {
+                     "Indicates Memory RAS Enabled Mode Selection.",
+                     "Memory RAS Mode Select Enabled. Prior Mode=%1 Selected "
+                     "Mode=%2.",
+                     "OK",
+                     2,
+
+                     {
+                         "string",
+                         "string",
+                     },
+                     "None.",
+                 }},
+    MessageEntry{"MemoryThermTrip",
+                 {
+                     "Indicates that the system memory ThermTrip is asserted.",
+                     "Memory ThermTrip asserted.",
+                     "Critical",
+                     0,
+                     {},
+                     "None.",
+                 }},
+    MessageEntry{"MirroringRedundancyDegraded",
+                 {
+                     "Indicates the mirroring redundancy state is degraded.",
+                     "Mirroring redundancy state degraded. Socket=%1 "
+                     "Channel=%2 DIMM=%3 Pair=%4 Rank=%5.",
+                     "Warning",
+                     5,
+
+                     {
+                         "number",
+                         "string",
+                         "number",
+                         "number",
+                         "number",
+                     },
+                     "None.",
+                 }},
     MessageEntry{
         "MirroringRedundancyFull",
         {
-            .description =
-                "Indicates the mirroring redundancy state is fully redundant.",
-            .message = "Mirroring redundancy state fully redundant. Socket=%1 "
-                       "Channel=%2 DIMM=%3 Pair=%4 Rank=%5.",
-            .severity = "OK",
-            .numberOfArgs = 5,
-            .paramTypes =
-                {
-                    "number",
-                    "string",
-                    "number",
-                    "number",
-                    "number",
-                },
-            .resolution = "None.",
+            "Indicates the mirroring redundancy state is fully redundant.",
+            "Mirroring redundancy state fully redundant. Socket=%1 "
+            "Channel=%2 DIMM=%3 Pair=%4 Rank=%5.",
+            "OK",
+            5,
+
+            {
+                "number",
+                "string",
+                "number",
+                "number",
+                "number",
+            },
+            "None.",
         }},
-    MessageEntry{
-        "NMIButtonPressed",
-        {
-            .description = "Indicates that the NMI button was pressed.",
-            .message = "NMI Button Pressed.",
-            .severity = "Critical",
-            .numberOfArgs = 0,
-            .paramTypes = {},
-            .resolution = "None.",
-        }},
+    MessageEntry{"NMIButtonPressed",
+                 {
+                     "Indicates that the NMI button was pressed.",
+                     "NMI Button Pressed.",
+                     "Critical",
+                     0,
+                     {},
+                     "None.",
+                 }},
     MessageEntry{"NMIDiagnosticInterrupt",
                  {
-                     .description = "Indicates that an NMI Diagnostic "
-                                    "Interrupt has been generated.",
-                     .message = "NMI Diagnostic Interrupt.",
-                     .severity = "Critical",
-                     .numberOfArgs = 0,
-                     .paramTypes = {},
-                     .resolution = "None.",
+                     "Indicates that an NMI Diagnostic "
+                     "Interrupt has been generated.",
+                     "NMI Diagnostic Interrupt.",
+                     "Critical",
+                     0,
+                     {},
+                     "None.",
                  }},
-    MessageEntry{
-        "PCIeCorrectableAdvisoryNonFatal",
-        {
-            .description =
-                "Indicates a PCIe Correctable Advisory Non-fatal Error.",
-            .message = "PCIe Correctable Advisory Non-fatal Error. Bus=%1 "
-                       "Device=%2 Function=%3.",
-            .severity = "Warning",
-            .numberOfArgs = 3,
-            .paramTypes =
-                {
-                    "number",
-                    "number",
-                    "number",
-                },
-            .resolution = "None.",
-        }},
-    MessageEntry{
-        "PCIeCorrectableBadDLLP",
-        {
-            .description = "Indicates a PCIe Correctable Bad DLLP Error.",
-            .message =
-                "PCIe Correctable Bad DLLP. Bus=%1 Device=%2 Function=%3.",
-            .severity = "Warning",
-            .numberOfArgs = 3,
-            .paramTypes =
-                {
-                    "number",
-                    "number",
-                    "number",
-                },
-            .resolution = "None.",
-        }},
-    MessageEntry{
-        "PCIeCorrectableBadTLP",
-        {
-            .description = "Indicates a PCIe Correctable Bad TLP Error.",
-            .message =
-                "PCIe Correctable Bad TLP. Bus=%1 Device=%2 Function=%3.",
-            .severity = "Warning",
-            .numberOfArgs = 3,
-            .paramTypes =
-                {
-                    "number",
-                    "number",
-                    "number",
-                },
-            .resolution = "None.",
-        }},
-    MessageEntry{
-        "PCIeCorrectableHeaderLogOverflow",
-        {
-            .description =
-                "Indicates a PCIe Correctable Header Log Overflow Error.",
-            .message = "PCIe Correctable Header Log Overflow. Bus=%1 Device=%2 "
-                       "Function=%3.",
-            .severity = "Warning",
-            .numberOfArgs = 3,
-            .paramTypes =
-                {
-                    "number",
-                    "number",
-                    "number",
-                },
-            .resolution = "None.",
-        }},
-    MessageEntry{
-        "PCIeCorrectableInternal",
-        {
-            .description = "Indicates a PCIe Correctable Internal Error.",
-            .message = "PCIe Correctable Internal Error. Bus=%1 Device=%2 "
-                       "Function=%3.",
-            .severity = "Warning",
-            .numberOfArgs = 3,
-            .paramTypes =
-                {
-                    "number",
-                    "number",
-                    "number",
-                },
-            .resolution = "None.",
-        }},
+    MessageEntry{"PCIeCorrectableAdvisoryNonFatal",
+                 {
+                     "Indicates a PCIe Correctable Advisory Non-fatal Error.",
+                     "PCIe Correctable Advisory Non-fatal Error. Bus=%1 "
+                     "Device=%2 Function=%3.",
+                     "Warning",
+                     3,
+
+                     {
+                         "number",
+                         "number",
+                         "number",
+                     },
+                     "None.",
+                 }},
+    MessageEntry{"PCIeCorrectableBadDLLP",
+                 {
+                     "Indicates a PCIe Correctable Bad DLLP Error.",
+
+                     "PCIe Correctable Bad DLLP. Bus=%1 Device=%2 Function=%3.",
+                     "Warning",
+                     3,
+
+                     {
+                         "number",
+                         "number",
+                         "number",
+                     },
+                     "None.",
+                 }},
+    MessageEntry{"PCIeCorrectableBadTLP",
+                 {
+                     "Indicates a PCIe Correctable Bad TLP Error.",
+
+                     "PCIe Correctable Bad TLP. Bus=%1 Device=%2 Function=%3.",
+                     "Warning",
+                     3,
+
+                     {
+                         "number",
+                         "number",
+                         "number",
+                     },
+                     "None.",
+                 }},
+    MessageEntry{"PCIeCorrectableHeaderLogOverflow",
+                 {
+                     "Indicates a PCIe Correctable Header Log Overflow Error.",
+                     "PCIe Correctable Header Log Overflow. Bus=%1 Device=%2 "
+                     "Function=%3.",
+                     "Warning",
+                     3,
+
+                     {
+                         "number",
+                         "number",
+                         "number",
+                     },
+                     "None.",
+                 }},
+    MessageEntry{"PCIeCorrectableInternal",
+                 {
+                     "Indicates a PCIe Correctable Internal Error.",
+                     "PCIe Correctable Internal Error. Bus=%1 Device=%2 "
+                     "Function=%3.",
+                     "Warning",
+                     3,
+
+                     {
+                         "number",
+                         "number",
+                         "number",
+                     },
+                     "None.",
+                 }},
     MessageEntry{"PCIeCorrectableLinkBWChanged",
                  {
-                     .description =
-                         "Indicates a PCIe Correctable Link BW Changed Error.",
-                     .message = "PCIe Correctable Link BW Changed. Bus=%1 "
-                                "Device=%2 Function=%3.",
-                     .severity = "Warning",
-                     .numberOfArgs = 3,
-                     .paramTypes =
-                         {
-                             "number",
-                             "number",
-                             "number",
-                         },
-                     .resolution = "None.",
+                     "Indicates a PCIe Correctable Link BW Changed Error.",
+                     "PCIe Correctable Link BW Changed. Bus=%1 "
+                     "Device=%2 Function=%3.",
+                     "Warning",
+                     3,
+
+                     {
+                         "number",
+                         "number",
+                         "number",
+                     },
+                     "None.",
                  }},
-    MessageEntry{
-        "PCIeCorrectableReceiverError",
-        {
-            .description = "Indicates a PCIe Correctable Receiver Error.",
-            .message = "PCIe Correctable Receiver Error. Bus=%1 Device=%2 "
-                       "Function=%3.",
-            .severity = "Warning",
-            .numberOfArgs = 3,
-            .paramTypes =
-                {
-                    "number",
-                    "number",
-                    "number",
-                },
-            .resolution = "None.",
-        }},
-    MessageEntry{
-        "PCIeCorrectableReplayNumRollover",
-        {
-            .description = "Indicates a PCIe Correctable Replay Num Rollover.",
-            .message = "PCIe Correctable Replay Num Rollover. Bus=%1 Device=%2 "
-                       "Function=%3.",
-            .severity = "Warning",
-            .numberOfArgs = 3,
-            .paramTypes =
-                {
-                    "number",
-                    "number",
-                    "number",
-                },
-            .resolution = "None.",
-        }},
-    MessageEntry{
-        "PCIeCorrectableReplayTimerTimeout",
-        {
-            .description = "Indicates a PCIe Correctable Replay Timer Timeout.",
-            .message = "PCIe Correctable Replay Timer Timeout. Bus=%1 "
-                       "Device=%2 Function=%3.",
-            .severity = "Warning",
-            .numberOfArgs = 3,
-            .paramTypes =
-                {
-                    "number",
-                    "number",
-                    "number",
-                },
-            .resolution = "None.",
-        }},
+    MessageEntry{"PCIeCorrectableReceiverError",
+                 {
+                     "Indicates a PCIe Correctable Receiver Error.",
+                     "PCIe Correctable Receiver Error. Bus=%1 Device=%2 "
+                     "Function=%3.",
+                     "Warning",
+                     3,
+
+                     {
+                         "number",
+                         "number",
+                         "number",
+                     },
+                     "None.",
+                 }},
+    MessageEntry{"PCIeCorrectableReplayNumRollover",
+                 {
+                     "Indicates a PCIe Correctable Replay Num Rollover.",
+                     "PCIe Correctable Replay Num Rollover. Bus=%1 Device=%2 "
+                     "Function=%3.",
+                     "Warning",
+                     3,
+
+                     {
+                         "number",
+                         "number",
+                         "number",
+                     },
+                     "None.",
+                 }},
+    MessageEntry{"PCIeCorrectableReplayTimerTimeout",
+                 {
+                     "Indicates a PCIe Correctable Replay Timer Timeout.",
+                     "PCIe Correctable Replay Timer Timeout. Bus=%1 "
+                     "Device=%2 Function=%3.",
+                     "Warning",
+                     3,
+
+                     {
+                         "number",
+                         "number",
+                         "number",
+                     },
+                     "None.",
+                 }},
     MessageEntry{"PCIeCorrectableUnspecifiedAERError",
                  {
-                     .description =
-                         "Indicates a PCIe Correctable Unspecified AER Error.",
-                     .message = "PCIe Correctable Unspecified AER Error. "
-                                "Bus=%1 Device=%2 Function=%3.",
-                     .severity = "Warning",
-                     .numberOfArgs = 3,
-                     .paramTypes =
-                         {
-                             "number",
-                             "number",
-                             "number",
-                         },
-                     .resolution = "None.",
+                     "Indicates a PCIe Correctable Unspecified AER Error.",
+                     "PCIe Correctable Unspecified AER Error. "
+                     "Bus=%1 Device=%2 Function=%3.",
+                     "Warning",
+                     3,
+
+                     {
+                         "number",
+                         "number",
+                         "number",
+                     },
+                     "None.",
                  }},
-    MessageEntry{
-        "PCIeFatalACSViolation",
-        {
-            .description = "Indicates a PCIe ACS Violation Error.",
-            .message =
-                "PCIe Fatal ACS Violation. Bus=%1 Device=%2 Function=%3.",
-            .severity = "Error",
-            .numberOfArgs = 3,
-            .paramTypes =
-                {
-                    "number",
-                    "number",
-                    "number",
-                },
-            .resolution = "None.",
-        }},
-    MessageEntry{
-        "PCIeFatalAtomicEgressBlocked",
-        {
-            .description = "Indicates a PCIe Atomic Egress Blocked Error.",
-            .message = "PCIe Fatal Atomic Egress Blocked. Bus=%1 Device=%2 "
-                       "Function=%3.",
-            .severity = "Error",
-            .numberOfArgs = 3,
-            .paramTypes =
-                {
-                    "number",
-                    "number",
-                    "number",
-                },
-            .resolution = "None.",
-        }},
+    MessageEntry{"PCIeFatalACSViolation",
+                 {
+                     "Indicates a PCIe ACS Violation Error.",
+
+                     "PCIe Fatal ACS Violation. Bus=%1 Device=%2 Function=%3.",
+                     "Error",
+                     3,
+
+                     {
+                         "number",
+                         "number",
+                         "number",
+                     },
+                     "None.",
+                 }},
+    MessageEntry{"PCIeFatalAtomicEgressBlocked",
+                 {
+                     "Indicates a PCIe Atomic Egress Blocked Error.",
+                     "PCIe Fatal Atomic Egress Blocked. Bus=%1 Device=%2 "
+                     "Function=%3.",
+                     "Error",
+                     3,
+
+                     {
+                         "number",
+                         "number",
+                         "number",
+                     },
+                     "None.",
+                 }},
     MessageEntry{
         "PCIeFatalCompleterAbort",
         {
-            .description = "Indicates a PCIe Completer Abort Error.",
-            .message =
-                "PCIe Fatal Completer Abort. Bus=%1 Device=%2 Function=%3.",
-            .severity = "Error",
-            .numberOfArgs = 3,
-            .paramTypes =
-                {
-                    "number",
-                    "number",
-                    "number",
-                },
-            .resolution = "None.",
+            "Indicates a PCIe Completer Abort Error.",
+
+            "PCIe Fatal Completer Abort. Bus=%1 Device=%2 Function=%3.",
+            "Error",
+            3,
+
+            {
+                "number",
+                "number",
+                "number",
+            },
+            "None.",
         }},
     MessageEntry{
         "PCIeFatalCompletionTimeout",
         {
-            .description = "Indicates a PCIe Completion Timeout Error.",
-            .message =
-                "PCIe Fatal Completion Timeout. Bus=%1 Device=%2 Function=%3.",
-            .severity = "Error",
-            .numberOfArgs = 3,
-            .paramTypes =
-                {
-                    "number",
-                    "number",
-                    "number",
-                },
-            .resolution = "None.",
+            "Indicates a PCIe Completion Timeout Error.",
+
+            "PCIe Fatal Completion Timeout. Bus=%1 Device=%2 Function=%3.",
+            "Error",
+            3,
+
+            {
+                "number",
+                "number",
+                "number",
+            },
+            "None.",
         }},
     MessageEntry{
         "PCIeFatalDataLinkLayerProtocol",
         {
-            .description = "Indicates a PCIe Data Link Layer Protocol Error.",
-            .message =
-                "PCIe Fatal Data Link Layer Protocol Error. Bus=%1 Device=%2 "
-                "Function=%3.",
-            .severity = "Error",
-            .numberOfArgs = 3,
-            .paramTypes =
-                {
-                    "number",
-                    "number",
-                    "number",
-                },
-            .resolution = "None.",
+            "Indicates a PCIe Data Link Layer Protocol Error.",
+
+            "PCIe Fatal Data Link Layer Protocol Error. Bus=%1 Device=%2 "
+            "Function=%3.",
+            "Error",
+            3,
+
+            {
+                "number",
+                "number",
+                "number",
+            },
+            "None.",
         }},
-    MessageEntry{
-        "PCIeFatalECRCError",
-        {
-            .description = "Indicates a PCIe ECRC Error.",
-            .message = "PCIe Fatal ECRC Error. Bus=%1 Device=%2 Function=%3.",
-            .severity = "Error",
-            .numberOfArgs = 3,
-            .paramTypes =
-                {
-                    "number",
-                    "number",
-                    "number",
-                },
-            .resolution = "None.",
-        }},
-    MessageEntry{
-        "PCIeFatalFlowControlProtocol",
-        {
-            .description = "Indicates a PCIe Flow Control Protocol Error.",
-            .message =
-                "PCIe Fatal Flow Control Protocol Error. Bus=%1 Device=%2 "
-                "Function=%3.",
-            .severity = "Error",
-            .numberOfArgs = 3,
-            .paramTypes =
-                {
-                    "number",
-                    "number",
-                    "number",
-                },
-            .resolution = "None.",
-        }},
+    MessageEntry{"PCIeFatalECRCError",
+                 {
+                     "Indicates a PCIe ECRC Error.",
+                     "PCIe Fatal ECRC Error. Bus=%1 Device=%2 Function=%3.",
+                     "Error",
+                     3,
+
+                     {
+                         "number",
+                         "number",
+                         "number",
+                     },
+                     "None.",
+                 }},
+    MessageEntry{"PCIeFatalFlowControlProtocol",
+                 {
+                     "Indicates a PCIe Flow Control Protocol Error.",
+
+                     "PCIe Fatal Flow Control Protocol Error. Bus=%1 Device=%2 "
+                     "Function=%3.",
+                     "Error",
+                     3,
+
+                     {
+                         "number",
+                         "number",
+                         "number",
+                     },
+                     "None.",
+                 }},
     MessageEntry{
         "PCIeFatalMalformedTLP",
         {
-            .description = "Indicates a PCIe Malformed TLP Error.",
-            .message =
-                "PCIe Fatal Malformed TLP Error. Bus=%1 Device=%2 Function=%3.",
-            .severity = "Error",
-            .numberOfArgs = 3,
-            .paramTypes =
-                {
-                    "number",
-                    "number",
-                    "number",
-                },
-            .resolution = "None.",
+            "Indicates a PCIe Malformed TLP Error.",
+
+            "PCIe Fatal Malformed TLP Error. Bus=%1 Device=%2 Function=%3.",
+            "Error",
+            3,
+
+            {
+                "number",
+                "number",
+                "number",
+            },
+            "None.",
         }},
     MessageEntry{"PCIeFatalMCBlockedTLP",
                  {
-                     .description = "Indicates a PCIe MC Blocked TLP Error.",
-                     .message = "PCIe Fatal MC Blocked TLP Error. Bus=%1 "
-                                "Device=%2 Function=%3.",
-                     .severity = "Error",
-                     .numberOfArgs = 3,
-                     .paramTypes =
-                         {
-                             "number",
-                             "number",
-                             "number",
-                         },
-                     .resolution = "None.",
+                     "Indicates a PCIe MC Blocked TLP Error.",
+                     "PCIe Fatal MC Blocked TLP Error. Bus=%1 "
+                     "Device=%2 Function=%3.",
+                     "Error",
+                     3,
+
+                     {
+                         "number",
+                         "number",
+                         "number",
+                     },
+                     "None.",
                  }},
     MessageEntry{
         "PCIeFatalPoisonedTLP",
         {
-            .description = "Indicates a PCIe Poisoned TLP Error.",
-            .message =
-                "PCIe Fatal Poisoned TLP Error. Bus=%1 Device=%2 Function=%3.",
-            .severity = "Error",
-            .numberOfArgs = 3,
-            .paramTypes =
-                {
-                    "number",
-                    "number",
-                    "number",
-                },
-            .resolution = "None.",
+            "Indicates a PCIe Poisoned TLP Error.",
+
+            "PCIe Fatal Poisoned TLP Error. Bus=%1 Device=%2 Function=%3.",
+            "Error",
+            3,
+
+            {
+                "number",
+                "number",
+                "number",
+            },
+            "None.",
         }},
-    MessageEntry{
-        "PCIeFatalReceiverBufferOverflow",
-        {
-            .description = "Indicates a PCIe Receiver Buffer Overflow Error.",
-            .message = "PCIe Fatal Receiver Buffer Overflow. Bus=%1 Device=%2 "
-                       "Function=%3.",
-            .severity = "Error",
-            .numberOfArgs = 3,
-            .paramTypes =
-                {
-                    "number",
-                    "number",
-                    "number",
-                },
-            .resolution = "None.",
-        }},
+    MessageEntry{"PCIeFatalReceiverBufferOverflow",
+                 {
+                     "Indicates a PCIe Receiver Buffer Overflow Error.",
+                     "PCIe Fatal Receiver Buffer Overflow. Bus=%1 Device=%2 "
+                     "Function=%3.",
+                     "Error",
+                     3,
+
+                     {
+                         "number",
+                         "number",
+                         "number",
+                     },
+                     "None.",
+                 }},
     MessageEntry{
         "PCIeFatalReceivedErrNonFatalMessage",
         {
-            .description =
-                "Indicates a PCIe Received ERR_NONFATAL Message Error.",
-            .message =
-                "PCIe Fatal Received ERR_NONFATAL Message. Bus=%1 Device=%2 "
-                "Function=%3.",
-            .severity = "Error",
-            .numberOfArgs = 3,
-            .paramTypes =
-                {
-                    "number",
-                    "number",
-                    "number",
-                },
-            .resolution = "None.",
+            "Indicates a PCIe Received ERR_NONFATAL Message Error.",
+
+            "PCIe Fatal Received ERR_NONFATAL Message. Bus=%1 Device=%2 "
+            "Function=%3.",
+            "Error",
+            3,
+
+            {
+                "number",
+                "number",
+                "number",
+            },
+            "None.",
         }},
     MessageEntry{"PCIeFatalReceivedFatalMessageFromDownstream",
                  {
-                     .description = "Indicates a PCIe Received Fatal Message "
-                                    "From Downstream Error.",
-                     .message =
-                         "PCIe Fatal Received Fatal Message From Downstream. "
-                         "Bus=%1 Device=%2 Function=%3.",
-                     .severity = "Error",
-                     .numberOfArgs = 3,
-                     .paramTypes =
-                         {
-                             "number",
-                             "number",
-                             "number",
-                         },
-                     .resolution = "None.",
+                     "Indicates a PCIe Received Fatal Message "
+                     "From Downstream Error.",
+
+                     "PCIe Fatal Received Fatal Message From Downstream. "
+                     "Bus=%1 Device=%2 Function=%3.",
+                     "Error",
+                     3,
+
+                     {
+                         "number",
+                         "number",
+                         "number",
+                     },
+                     "None.",
                  }},
-    MessageEntry{
-        "PCIeFatalSurpriseLinkDown",
-        {
-            .description = "Indicates a PCIe Surprise Link Down Error.",
-            .message = "PCIe Fatal Surprise Link Down Error. Bus=%1 Device=%2 "
-                       "Function=%3.",
-            .severity = "Error",
-            .numberOfArgs = 3,
-            .paramTypes =
-                {
-                    "number",
-                    "number",
-                    "number",
-                },
-            .resolution = "None.",
-        }},
-    MessageEntry{
-        "PCIeFatalTLPPrefixBlocked",
-        {
-            .description = "Indicates a PCIe TLP Prefix Blocked Error.",
-            .message = "PCIe Fatal TLP Prefix Blocked Error. Bus=%1 Device=%2 "
-                       "Function=%3.",
-            .severity = "Error",
-            .numberOfArgs = 3,
-            .paramTypes =
-                {
-                    "number",
-                    "number",
-                    "number",
-                },
-            .resolution = "None.",
-        }},
+    MessageEntry{"PCIeFatalSurpriseLinkDown",
+                 {
+                     "Indicates a PCIe Surprise Link Down Error.",
+                     "PCIe Fatal Surprise Link Down Error. Bus=%1 Device=%2 "
+                     "Function=%3.",
+                     "Error",
+                     3,
+
+                     {
+                         "number",
+                         "number",
+                         "number",
+                     },
+                     "None.",
+                 }},
+    MessageEntry{"PCIeFatalTLPPrefixBlocked",
+                 {
+                     "Indicates a PCIe TLP Prefix Blocked Error.",
+                     "PCIe Fatal TLP Prefix Blocked Error. Bus=%1 Device=%2 "
+                     "Function=%3.",
+                     "Error",
+                     3,
+
+                     {
+                         "number",
+                         "number",
+                         "number",
+                     },
+                     "None.",
+                 }},
     MessageEntry{
         "PCIeFatalUncorrectableInternal",
         {
-            .description = "Indicates a PCIe Uncorrectable Internal Error.",
-            .message =
-                "PCIe Fatal Uncorrectable Internal Error. Bus=%1 Device=%2 "
-                "Function=%3.",
-            .severity = "Error",
-            .numberOfArgs = 3,
-            .paramTypes =
-                {
-                    "number",
-                    "number",
-                    "number",
-                },
-            .resolution = "None.",
+            "Indicates a PCIe Uncorrectable Internal Error.",
+
+            "PCIe Fatal Uncorrectable Internal Error. Bus=%1 Device=%2 "
+            "Function=%3.",
+            "Error",
+            3,
+
+            {
+                "number",
+                "number",
+                "number",
+            },
+            "None.",
         }},
-    MessageEntry{
-        "PCIeFatalUnexpectedCompletion",
-        {
-            .description = "Indicates a PCIe Unexpected Completion Error.",
-            .message = "PCIe Fatal Unexpected Completion. Bus=%1 Device=%2 "
-                       "Function=%3.",
-            .severity = "Error",
-            .numberOfArgs = 3,
-            .paramTypes =
-                {
-                    "number",
-                    "number",
-                    "number",
-                },
-            .resolution = "None.",
-        }},
-    MessageEntry{
-        "PCIeFatalUnspecifiedNonAERFatalError",
-        {
-            .description = "Indicates a PCIe Unspecified Non-AER Fatal Error.",
-            .message = "PCIe Fatal Unspecified Non-AER Fatal Error. Bus=%1 "
-                       "Device=%2 Function=%3.",
-            .severity = "Error",
-            .numberOfArgs = 3,
-            .paramTypes =
-                {
-                    "number",
-                    "number",
-                    "number",
-                },
-            .resolution = "None.",
-        }},
+    MessageEntry{"PCIeFatalUnexpectedCompletion",
+                 {
+                     "Indicates a PCIe Unexpected Completion Error.",
+                     "PCIe Fatal Unexpected Completion. Bus=%1 Device=%2 "
+                     "Function=%3.",
+                     "Error",
+                     3,
+
+                     {
+                         "number",
+                         "number",
+                         "number",
+                     },
+                     "None.",
+                 }},
+    MessageEntry{"PCIeFatalUnspecifiedNonAERFatalError",
+                 {
+                     "Indicates a PCIe Unspecified Non-AER Fatal Error.",
+                     "PCIe Fatal Unspecified Non-AER Fatal Error. Bus=%1 "
+                     "Device=%2 Function=%3.",
+                     "Error",
+                     3,
+
+                     {
+                         "number",
+                         "number",
+                         "number",
+                     },
+                     "None.",
+                 }},
     MessageEntry{
         "PCIeFatalUnsupportedRequest",
         {
-            .description = "Indicates a PCIe Unsupported Request Error.",
-            .message =
-                "PCIe Fatal Unsupported Request. Bus=%1 Device=%2 Function=%3.",
-            .severity = "Error",
-            .numberOfArgs = 3,
-            .paramTypes =
-                {
-                    "number",
-                    "number",
-                    "number",
-                },
-            .resolution = "None.",
+            "Indicates a PCIe Unsupported Request Error.",
+
+            "PCIe Fatal Unsupported Request. Bus=%1 Device=%2 Function=%3.",
+            "Error",
+            3,
+
+            {
+                "number",
+                "number",
+                "number",
+            },
+            "None.",
         }},
     MessageEntry{"ChassisIntrusionDetected",
                  {
-                     .description = "Indicates that a physical security event "
-                                    "of the chassis intrusion has occurred.",
-                     .message = "Chassis Intrusion Detected.",
-                     .severity = "Warning",
-                     .numberOfArgs = 0,
-                     .paramTypes = {},
-                     .resolution = "None.",
+                     "Indicates that a physical security event "
+                     "of the chassis intrusion has occurred.",
+                     "Chassis Intrusion Detected.",
+                     "Warning",
+                     0,
+                     {},
+                     "None.",
                  }},
-    MessageEntry{
-        "ChassisIntrusionReset",
-        {
-            .description =
-                "Indicates that chassis intrusion status has recovered.",
-            .message = "Chassis Intrusion Reset.",
-            .severity = "OK",
-            .numberOfArgs = 0,
-            .paramTypes = {},
-            .resolution = "None.",
-        }},
+    MessageEntry{"ChassisIntrusionReset",
+                 {
+                     "Indicates that chassis intrusion status has recovered.",
+                     "Chassis Intrusion Reset.",
+                     "OK",
+                     0,
+                     {},
+                     "None.",
+                 }},
     MessageEntry{"LanLost",
                  {
-                     .description = "Indicates that a physical security event "
-                                    "of the LAN leash has lost.",
-                     .message = "%1 LAN leash lost.",
-                     .severity = "Warning",
-                     .numberOfArgs = 1,
-                     .paramTypes =
-                         {
-                             "string",
-                         },
-                     .resolution = "None.",
+                     "Indicates that a physical security event "
+                     "of the LAN leash has lost.",
+                     "%1 LAN leash lost.",
+                     "Warning",
+                     1,
+
+                     {
+                         "string",
+                     },
+                     "None.",
                  }},
-    MessageEntry{
-        "LanRegained",
-        {
-            .description = "Indicates that LAN link status has reconnected.",
-            .message = "%1 LAN leash regained.",
-            .severity = "OK",
-            .numberOfArgs = 1,
-            .paramTypes =
-                {
-                    "string",
-                },
-            .resolution = "None.",
-        }},
-    MessageEntry{
-        "PowerButtonPressed",
-        {
-            .description = "Indicates that the power button was pressed.",
-            .message = "Power Button Pressed.",
-            .severity = "OK",
-            .numberOfArgs = 0,
-            .paramTypes = {},
-            .resolution = "None.",
-        }},
+    MessageEntry{"LanRegained",
+                 {
+                     "Indicates that LAN link status has reconnected.",
+                     "%1 LAN leash regained.",
+                     "OK",
+                     1,
+
+                     {
+                         "string",
+                     },
+                     "None.",
+                 }},
+    MessageEntry{"PowerButtonPressed",
+                 {
+                     "Indicates that the power button was pressed.",
+                     "Power Button Pressed.",
+                     "OK",
+                     0,
+                     {},
+                     "None.",
+                 }},
     MessageEntry{"PowerRestorePolicyApplied",
                  {
-                     .description = "Indicates that power was restored and the "
-                                    "BMC has applied the restore policy.",
-                     .message = "Power restore policy applied.",
-                     .severity = "OK",
-                     .numberOfArgs = 0,
-                     .paramTypes = {},
-                     .resolution = "None.",
+                     "Indicates that power was restored and the "
+                     "BMC has applied the restore policy.",
+                     "Power restore policy applied.",
+                     "OK",
+                     0,
+                     {},
+                     "None.",
                  }},
-    MessageEntry{
-        "PowerSupplyConfigurationError",
-        {
-            .description = "Indicates an error in power supply configuration.",
-            .message = "Power supply %1 configuration error.",
-            .severity = "Critical",
-            .numberOfArgs = 1,
-            .paramTypes = {"string"},
-            .resolution = "None.",
-        }},
+    MessageEntry{"PowerSupplyConfigurationError",
+                 {
+                     "Indicates an error in power supply configuration.",
+                     "Power supply %1 configuration error.",
+                     "Critical",
+                     1,
+                     {"string"},
+                     "None.",
+                 }},
     MessageEntry{
         "PowerSupplyFanFailed",
         {
-            .description =
-                "Indicates that the specified power supply fan has failed.",
-            .message = "Power supply %1 fan %2 failed.",
-            .severity = "Critical",
-            .numberOfArgs = 2,
-            .paramTypes = {"string", "string"},
-            .resolution = "None.",
+            "Indicates that the specified power supply fan has failed.",
+            "Power supply %1 fan %2 failed.",
+            "Critical",
+            2,
+            {"string", "string"},
+            "None.",
         }},
     MessageEntry{
         "PowerSupplyFanRecovered",
         {
-            .description =
-                "Indicates that the power supply fan recovered from a failure.",
-            .message = "Power supply %1 fan %2 recovered.",
-            .severity = "OK",
-            .numberOfArgs = 2,
-            .paramTypes = {"string", "string"},
-            .resolution = "None.",
+            "Indicates that the power supply fan recovered from a failure.",
+            "Power supply %1 fan %2 recovered.",
+            "OK",
+            2,
+            {"string", "string"},
+            "None.",
         }},
     MessageEntry{"PowerSupplyFailed",
                  {
-                     .description = "Indicates that a power supply has failed.",
-                     .message = "Power supply %1 failed.",
-                     .severity = "Critical",
-                     .numberOfArgs = 1,
-                     .paramTypes = {"string"},
-                     .resolution = "None.",
+                     "Indicates that a power supply has failed.",
+                     "Power supply %1 failed.",
+                     "Critical",
+                     1,
+                     {"string"},
+                     "None.",
                  }},
     MessageEntry{"PowerSupplyFailurePredicted",
                  {
-                     .description =
-                         "Indicates that a power supply is predicted to fail.",
-                     .message = "Power supply %1 failure predicted.",
-                     .severity = "Warning",
-                     .numberOfArgs = 1,
-                     .paramTypes = {"string"},
-                     .resolution = "None.",
+                     "Indicates that a power supply is predicted to fail.",
+                     "Power supply %1 failure predicted.",
+                     "Warning",
+                     1,
+                     {"string"},
+                     "None.",
                  }},
-    MessageEntry{
-        "PowerSupplyInserted",
-        {
-            .description = "Indicates that a power supply has been inserted.",
-            .message = "Power supply %1 inserted.",
-            .severity = "OK",
-            .numberOfArgs = 1,
-            .paramTypes = {"string"},
-            .resolution = "None.",
-        }},
-    MessageEntry{
-        "PowerSupplyPowerGoodFailed",
-        {
-            .description = "Indicates that the power supply power good signal "
-                           "failed to assert within the specified time.",
-            .message = "Power supply power good failed to assert within %1 "
-                       "milliseconds.",
-            .severity = "Critical",
-            .numberOfArgs = 1,
-            .paramTypes = {"number"},
-            .resolution = "None.",
-        }},
+    MessageEntry{"PowerSupplyInserted",
+                 {
+                     "Indicates that a power supply has been inserted.",
+                     "Power supply %1 inserted.",
+                     "OK",
+                     1,
+                     {"string"},
+                     "None.",
+                 }},
+    MessageEntry{"PowerSupplyPowerGoodFailed",
+                 {
+                     "Indicates that the power supply power good signal "
+                     "failed to assert within the specified time.",
+                     "Power supply power good failed to assert within %1 "
+                     "milliseconds.",
+                     "Critical",
+                     1,
+                     {"number"},
+                     "None.",
+                 }},
     MessageEntry{"PowerSupplyPowerLost",
                  {
-                     .description =
-                         "Indicates that a power supply has lost input power.",
-                     .message = "Power supply %1 power lost.",
-                     .severity = "Critical",
-                     .numberOfArgs = 1,
-                     .paramTypes = {"string"},
-                     .resolution = "None.",
+                     "Indicates that a power supply has lost input power.",
+                     "Power supply %1 power lost.",
+                     "Critical",
+                     1,
+                     {"string"},
+                     "None.",
                  }},
-    MessageEntry{
-        "PowerSupplyPowerRestored",
-        {
-            .description =
-                "Indicates that a power supply input power was restored.",
-            .message = "Power supply %1 power restored.",
-            .severity = "OK",
-            .numberOfArgs = 1,
-            .paramTypes = {"string"},
-            .resolution = "None.",
-        }},
+    MessageEntry{"PowerSupplyPowerRestored",
+                 {
+                     "Indicates that a power supply input power was restored.",
+                     "Power supply %1 power restored.",
+                     "OK",
+                     1,
+                     {"string"},
+                     "None.",
+                 }},
     MessageEntry{"PowerSupplyPredictedFailureRecovered",
                  {
-                     .description = "Indicates that a power supply recovered "
-                                    "from a predicted failure.",
-                     .message = "Power supply %1 predicted failure recovered.",
-                     .severity = "OK",
-                     .numberOfArgs = 1,
-                     .paramTypes = {"string"},
-                     .resolution = "None.",
+                     "Indicates that a power supply recovered "
+                     "from a predicted failure.",
+                     "Power supply %1 predicted failure recovered.",
+                     "OK",
+                     1,
+                     {"string"},
+                     "None.",
                  }},
-    MessageEntry{
-        "PowerSupplyRecovered",
-        {
-            .description =
-                "Indicates that a power supply recovered from a failure.",
-            .message = "Power supply %1 recovered.",
-            .severity = "OK",
-            .numberOfArgs = 1,
-            .paramTypes = {"string"},
-            .resolution = "None.",
-        }},
-    MessageEntry{
-        "PowerSupplyRemoved",
-        {
-            .description = "Indicates that a power supply has been removed.",
-            .message = "Power supply %1 removed.",
-            .severity = "Warning",
-            .numberOfArgs = 1,
-            .paramTypes = {"string"},
-            .resolution = "None.",
-        }},
-    MessageEntry{
-        "PowerUnitDegradedFromNonRedundant",
-        {
-            .description =
-                "Indicates that power unit is come back to redundant from"
-                "nonredundant but is still not in full redundancy mode.",
-            .message = "Power Unit degraded from nonredundant.",
-            .severity = "Warning",
-            .numberOfArgs = 0,
-            .paramTypes = {},
-            .resolution = "None.",
-        }},
+    MessageEntry{"PowerSupplyRecovered",
+                 {
+                     "Indicates that a power supply recovered from a failure.",
+                     "Power supply %1 recovered.",
+                     "OK",
+                     1,
+                     {"string"},
+                     "None.",
+                 }},
+    MessageEntry{"PowerSupplyRemoved",
+                 {
+                     "Indicates that a power supply has been removed.",
+                     "Power supply %1 removed.",
+                     "Warning",
+                     1,
+                     {"string"},
+                     "None.",
+                 }},
+    MessageEntry{"PowerUnitDegradedFromNonRedundant",
+                 {
+                     "Indicates that power unit is come back to redundant from"
+                     "nonredundant but is still not in full redundancy mode.",
+                     "Power Unit degraded from nonredundant.",
+                     "Warning",
+                     0,
+                     {},
+                     "None.",
+                 }},
     MessageEntry{"PowerUnitDegradedFromRedundant",
                  {
-                     .description =
-                         "Indicates that power unit is degarded from full "
-                         "redundancy mode.",
-                     .message = "Power Unit degraded from redundant.",
-                     .severity = "Warning",
-                     .numberOfArgs = 0,
-                     .paramTypes = {},
-                     .resolution = "None.",
+                     "Indicates that power unit is degarded from full "
+                     "redundancy mode.",
+                     "Power Unit degraded from redundant.",
+                     "Warning",
+                     0,
+                     {},
+                     "None.",
                  }},
-    MessageEntry{
-        "PowerUnitRedundancyDegraded",
-        {
-            .description =
-                "Indicates that power unit redundancy has been degraded.",
-            .message = "Power Unit Redundancy degraded.",
-            .severity = "Warning",
-            .numberOfArgs = 0,
-            .paramTypes = {},
-            .resolution = "None.",
-        }},
+    MessageEntry{"PowerUnitRedundancyDegraded",
+                 {
+                     "Indicates that power unit redundancy has been degraded.",
+                     "Power Unit Redundancy degraded.",
+                     "Warning",
+                     0,
+                     {},
+                     "None.",
+                 }},
     MessageEntry{
         "PowerUnitNonRedundantFromInsufficient",
         {
-            .description =
-                "Indicates that power unit is not in redundancy mode and get"
-                "sufficient power to support redundancy from insufficient"
-                "power.",
-            .message =
-                "Power Unit NonRedundant from insufficient to sufficient.",
-            .severity = "Warning",
-            .numberOfArgs = 0,
-            .paramTypes = {},
-            .resolution = "None.",
+            "Indicates that power unit is not in redundancy mode and get"
+            "sufficient power to support redundancy from insufficient"
+            "power.",
+
+            "Power Unit NonRedundant from insufficient to sufficient.",
+            "Warning",
+            0,
+            {},
+            "None.",
         }},
-    MessageEntry{
-        "PowerUnitNonRedundantInsufficient",
-        {
-            .description = "Indicates that power unit do not have sufficient "
-                           "power to support redundancy.",
-            .message = "Power Unit NonRedundant and has insufficient resource.",
-            .severity = "Error",
-            .numberOfArgs = 0,
-            .paramTypes = {},
-            .resolution = "None.",
-        }},
+    MessageEntry{"PowerUnitNonRedundantInsufficient",
+                 {
+                     "Indicates that power unit do not have sufficient "
+                     "power to support redundancy.",
+                     "Power Unit NonRedundant and has insufficient resource.",
+                     "Error",
+                     0,
+                     {},
+                     "None.",
+                 }},
     MessageEntry{"PowerUnitRedundancyLost",
                  {
-                     .description =
-                         "Indicates that power unit redundancy has been lost.",
-                     .message = "Power Unit Redundancy lost.",
-                     .severity = "Warning",
-                     .numberOfArgs = 0,
-                     .paramTypes = {},
-                     .resolution = "None.",
+                     "Indicates that power unit redundancy has been lost.",
+                     "Power Unit Redundancy lost.",
+                     "Warning",
+                     0,
+                     {},
+                     "None.",
                  }},
     MessageEntry{
         "PowerUnitRedundancyRegained",
         {
-            .description =
-                "Indicates that power unit full redundancy has been regained.",
-            .message = "Power Unit Redundancy regained.",
-            .severity = "OK",
-            .numberOfArgs = 0,
-            .paramTypes = {},
-            .resolution = "None.",
+            "Indicates that power unit full redundancy has been regained.",
+            "Power Unit Redundancy regained.",
+            "OK",
+            0,
+            {},
+            "None.",
         }},
     MessageEntry{
         "PowerUnitNonRedundantSufficient",
         {
-            .description =
-                "Indicates that power unit is not in redundancy mode but still"
-                "has sufficient power to support redundancy.",
-            .message = "Power Unit Nonredundant but has sufficient resource.",
-            .severity = "Warning",
-            .numberOfArgs = 0,
-            .paramTypes = {},
-            .resolution = "None.",
+            "Indicates that power unit is not in redundancy mode but still"
+            "has sufficient power to support redundancy.",
+            "Power Unit Nonredundant but has sufficient resource.",
+            "Warning",
+            0,
+            {},
+            "None.",
         }},
-    MessageEntry{
-        "ResetButtonPressed",
-        {
-            .description = "Indicates that the reset button was pressed.",
-            .message = "Reset Button Pressed.",
-            .severity = "OK",
-            .numberOfArgs = 0,
-            .paramTypes = {},
-            .resolution = "None.",
-        }},
+    MessageEntry{"ResetButtonPressed",
+                 {
+                     "Indicates that the reset button was pressed.",
+                     "Reset Button Pressed.",
+                     "OK",
+                     0,
+                     {},
+                     "None.",
+                 }},
     MessageEntry{"SELEntryAdded",
                  {
-                     .description = "Indicates a SEL entry was added using the "
-                                    "Add SEL Entry or Platform Event command.",
-                     .message = "SEL Entry Added: %1",
-                     .severity = "OK",
-                     .numberOfArgs = 1,
-                     .paramTypes =
-                         {
-                             "string",
-                         },
-                     .resolution = "None.",
+                     "Indicates a SEL entry was added using the "
+                     "Add SEL Entry or Platform Event command.",
+                     "SEL Entry Added: %1",
+                     "OK",
+                     1,
+
+                     {
+                         "string",
+                     },
+                     "None.",
                  }},
-    MessageEntry{
-        "SensorThresholdCriticalHighGoingHigh",
-        {
-            .description = "Indicates that a threshold sensor has crossed a "
-                           "critical high threshold going high.",
-            .message = "%1 sensor crossed a critical high threshold going "
-                       "high. Reading=%2 Threshold=%3.",
-            .severity = "Critical",
-            .numberOfArgs = 3,
-            .paramTypes = {"string", "number", "number"},
-            .resolution = "Check the sensor or subsystem for errors.",
-        }},
-    MessageEntry{
-        "SensorThresholdCriticalHighGoingLow",
-        {
-            .description = "Indicates that a threshold sensor has crossed a "
-                           "critical high threshold going low.",
-            .message = "%1 sensor crossed a critical high threshold going low. "
-                       "Reading=%2 Threshold=%3.",
-            .severity = "OK",
-            .numberOfArgs = 3,
-            .paramTypes = {"string", "number", "number"},
-            .resolution = "None.",
-        }},
-    MessageEntry{
-        "SensorThresholdCriticalLowGoingHigh",
-        {
-            .description = "Indicates that a threshold sensor has crossed a "
-                           "critical low threshold going high.",
-            .message = "%1 sensor crossed a critical low threshold going high. "
-                       "Reading=%2 Threshold=%3.",
-            .severity = "OK",
-            .numberOfArgs = 3,
-            .paramTypes = {"string", "number", "number"},
-            .resolution = "None.",
-        }},
-    MessageEntry{
-        "SensorThresholdCriticalLowGoingLow",
-        {
-            .description = "Indicates that a threshold sensor has crossed a "
-                           "critical low threshold going low.",
-            .message = "%1 sensor crossed a critical low threshold going low. "
-                       "Reading=%2 Threshold=%3.",
-            .severity = "Critical",
-            .numberOfArgs = 3,
-            .paramTypes = {"string", "number", "number"},
-            .resolution = "Check the sensor or subsystem for errors.",
-        }},
-    MessageEntry{
-        "SensorThresholdWarningHighGoingHigh",
-        {
-            .description = "Indicates that a threshold sensor has crossed a "
-                           "warning high threshold going high.",
-            .message = "%1 sensor crossed a warning high threshold going high. "
-                       "Reading=%2 Threshold=%3.",
-            .severity = "Warning",
-            .numberOfArgs = 3,
-            .paramTypes = {"string", "number", "number"},
-            .resolution = "Check the sensor or subsystem for errors.",
-        }},
-    MessageEntry{
-        "SensorThresholdWarningHighGoingLow",
-        {
-            .description = "Indicates that a threshold sensor has crossed a "
-                           "warning high threshold going low.",
-            .message = "%1 sensor crossed a warning high threshold going low. "
-                       "Reading=%2 Threshold=%3.",
-            .severity = "OK",
-            .numberOfArgs = 3,
-            .paramTypes = {"string", "number", "number"},
-            .resolution = "None.",
-        }},
-    MessageEntry{
-        "SensorThresholdWarningLowGoingHigh",
-        {
-            .description = "Indicates that a threshold sensor has crossed a "
-                           "warning low threshold going high.",
-            .message = "%1 sensor crossed a warning low threshold going high. "
-                       "Reading=%2 Threshold=%3.",
-            .severity = "OK",
-            .numberOfArgs = 3,
-            .paramTypes = {"string", "number", "number"},
-            .resolution = "None.",
-        }},
-    MessageEntry{
-        "SensorThresholdWarningLowGoingLow",
-        {
-            .description = "Indicates that a threshold sensor has crossed a "
-                           "warning low threshold going low.",
-            .message = "%1 sensor crossed a warning low threshold going low. "
-                       "Reading=%2 Threshold=%3.",
-            .severity = "Warning",
-            .numberOfArgs = 3,
-            .paramTypes = {"string", "number", "number"},
-            .resolution = "Check the sensor or subsystem for errors.",
-        }},
+    MessageEntry{"SensorThresholdCriticalHighGoingHigh",
+                 {
+                     "Indicates that a threshold sensor has crossed a "
+                     "critical high threshold going high.",
+                     "%1 sensor crossed a critical high threshold going "
+                     "high. Reading=%2 Threshold=%3.",
+                     "Critical",
+                     3,
+                     {"string", "number", "number"},
+                     "Check the sensor or subsystem for errors.",
+                 }},
+    MessageEntry{"SensorThresholdCriticalHighGoingLow",
+                 {
+                     "Indicates that a threshold sensor has crossed a "
+                     "critical high threshold going low.",
+                     "%1 sensor crossed a critical high threshold going low. "
+                     "Reading=%2 Threshold=%3.",
+                     "OK",
+                     3,
+                     {"string", "number", "number"},
+                     "None.",
+                 }},
+    MessageEntry{"SensorThresholdCriticalLowGoingHigh",
+                 {
+                     "Indicates that a threshold sensor has crossed a "
+                     "critical low threshold going high.",
+                     "%1 sensor crossed a critical low threshold going high. "
+                     "Reading=%2 Threshold=%3.",
+                     "OK",
+                     3,
+                     {"string", "number", "number"},
+                     "None.",
+                 }},
+    MessageEntry{"SensorThresholdCriticalLowGoingLow",
+                 {
+                     "Indicates that a threshold sensor has crossed a "
+                     "critical low threshold going low.",
+                     "%1 sensor crossed a critical low threshold going low. "
+                     "Reading=%2 Threshold=%3.",
+                     "Critical",
+                     3,
+                     {"string", "number", "number"},
+                     "Check the sensor or subsystem for errors.",
+                 }},
+    MessageEntry{"SensorThresholdWarningHighGoingHigh",
+                 {
+                     "Indicates that a threshold sensor has crossed a "
+                     "warning high threshold going high.",
+                     "%1 sensor crossed a warning high threshold going high. "
+                     "Reading=%2 Threshold=%3.",
+                     "Warning",
+                     3,
+                     {"string", "number", "number"},
+                     "Check the sensor or subsystem for errors.",
+                 }},
+    MessageEntry{"SensorThresholdWarningHighGoingLow",
+                 {
+                     "Indicates that a threshold sensor has crossed a "
+                     "warning high threshold going low.",
+                     "%1 sensor crossed a warning high threshold going low. "
+                     "Reading=%2 Threshold=%3.",
+                     "OK",
+                     3,
+                     {"string", "number", "number"},
+                     "None.",
+                 }},
+    MessageEntry{"SensorThresholdWarningLowGoingHigh",
+                 {
+                     "Indicates that a threshold sensor has crossed a "
+                     "warning low threshold going high.",
+                     "%1 sensor crossed a warning low threshold going high. "
+                     "Reading=%2 Threshold=%3.",
+                     "OK",
+                     3,
+                     {"string", "number", "number"},
+                     "None.",
+                 }},
+    MessageEntry{"SensorThresholdWarningLowGoingLow",
+                 {
+                     "Indicates that a threshold sensor has crossed a "
+                     "warning low threshold going low.",
+                     "%1 sensor crossed a warning low threshold going low. "
+                     "Reading=%2 Threshold=%3.",
+                     "Warning",
+                     3,
+                     {"string", "number", "number"},
+                     "Check the sensor or subsystem for errors.",
+                 }},
     MessageEntry{"ServiceFailure",
                  {
-                     .description =
-                         "Indicates that a service has exited unsuccessfully.",
-                     .message = "Service %1 has exited unsuccessfully.",
-                     .severity = "Warning",
-                     .numberOfArgs = 1,
-                     .paramTypes = {"string"},
-                     .resolution = "None.",
+                     "Indicates that a service has exited unsuccessfully.",
+                     "Service %1 has exited unsuccessfully.",
+                     "Warning",
+                     1,
+                     {"string"},
+                     "None.",
                  }},
     MessageEntry{"SparingRedundancyDegraded",
                  {
-                     .description =
-                         "Indicates the sparing redundancy state is degraded.",
-                     .message = "Sparing redundancy state degraded. Socket=%1 "
-                                "Channel=%2 DIMM=%3 Domain=%4 Rank=%5.",
-                     .severity = "Warning",
-                     .numberOfArgs = 5,
-                     .paramTypes =
-                         {
-                             "number",
-                             "string",
-                             "number",
-                             "string",
-                             "number",
-                         },
-                     .resolution = "None.",
+                     "Indicates the sparing redundancy state is degraded.",
+                     "Sparing redundancy state degraded. Socket=%1 "
+                     "Channel=%2 DIMM=%3 Domain=%4 Rank=%5.",
+                     "Warning",
+                     5,
+
+                     {
+                         "number",
+                         "string",
+                         "number",
+                         "string",
+                         "number",
+                     },
+                     "None.",
                  }},
     MessageEntry{
         "SparingRedundancyFull",
         {
-            .description =
-                "Indicates the sparing redundancy state is fully redundant.",
-            .message = "Sparing redundancy state fully redundant. Socket=%1 "
-                       "Channel=%2 DIMM=%3 Domain=%4 Rank=%5.",
-            .severity = "OK",
-            .numberOfArgs = 5,
-            .paramTypes =
-                {
-                    "number",
-                    "string",
-                    "number",
-                    "string",
-                    "number",
-                },
-            .resolution = "None.",
+            "Indicates the sparing redundancy state is fully redundant.",
+            "Sparing redundancy state fully redundant. Socket=%1 "
+            "Channel=%2 DIMM=%3 Domain=%4 Rank=%5.",
+            "OK",
+            5,
+
+            {
+                "number",
+                "string",
+                "number",
+                "string",
+                "number",
+            },
+            "None.",
         }},
-    MessageEntry{
-        "SsbThermalTrip",
-        {
-            .description =
-                "Indicates that an SSB Thermal trip has been asserted.",
-            .message = "SSB Thermal trip.",
-            .severity = "Critical",
-            .numberOfArgs = 0,
-            .paramTypes = {},
-            .resolution = "None.",
-        }},
+    MessageEntry{"SsbThermalTrip",
+                 {
+                     "Indicates that an SSB Thermal trip has been asserted.",
+                     "SSB Thermal trip.",
+                     "Critical",
+                     0,
+                     {},
+                     "None.",
+                 }},
     MessageEntry{"SystemPowerGoodFailed",
                  {
-                     .description =
-                         "Indicates that the system power good signal failed "
-                         "to assert within the specified time (VR failure).",
-                     .message = "System power good failed to assert within %1 "
-                                "milliseconds (VR failure).",
-                     .severity = "Critical",
-                     .numberOfArgs = 1,
-                     .paramTypes = {"number"},
-                     .resolution = "None.",
+                     "Indicates that the system power good signal failed "
+                     "to assert within the specified time (VR failure).",
+                     "System power good failed to assert within %1 "
+                     "milliseconds (VR failure).",
+                     "Critical",
+                     1,
+                     {"number"},
+                     "None.",
                  }},
     MessageEntry{"SystemPowerLost",
                  {
-                     .description = "Indicates that power was lost while the "
-                                    "system was powered on.",
-                     .message = "System Power Lost.",
-                     .severity = "Critical",
-                     .numberOfArgs = 0,
-                     .paramTypes = {},
-                     .resolution = "None.",
+                     "Indicates that power was lost while the "
+                     "system was powered on.",
+                     "System Power Lost.",
+                     "Critical",
+                     0,
+                     {},
+                     "None.",
                  }},
-    MessageEntry{
-        "SystemPowerOffFailed",
-        {
-            .description = "Indicates that the system failed to power off.",
-            .message = "System Power-Off Failed.",
-            .severity = "Critical",
-            .numberOfArgs = 0,
-            .paramTypes = {},
-            .resolution = "None.",
-        }},
-    MessageEntry{
-        "SystemPowerOnFailed",
-        {
-            .description = "Indicates that the system failed to power on.",
-            .message = "System Power-On Failed.",
-            .severity = "Critical",
-            .numberOfArgs = 0,
-            .paramTypes = {},
-            .resolution = "None.",
-        }},
+    MessageEntry{"SystemPowerOffFailed",
+                 {
+                     "Indicates that the system failed to power off.",
+                     "System Power-Off Failed.",
+                     "Critical",
+                     0,
+                     {},
+                     "None.",
+                 }},
+    MessageEntry{"SystemPowerOnFailed",
+                 {
+                     "Indicates that the system failed to power on.",
+                     "System Power-On Failed.",
+                     "Critical",
+                     0,
+                     {},
+                     "None.",
+                 }},
     MessageEntry{
         "VoltageRegulatorOverheated",
         {
-            .description =
-                "Indicates that the specified voltage regulator overheated.",
-            .message = "%1 Voltage Regulator Overheated.",
-            .severity = "Critical",
-            .numberOfArgs = 1,
-            .paramTypes = {"string"},
-            .resolution = "None.",
+            "Indicates that the specified voltage regulator overheated.",
+            "%1 Voltage Regulator Overheated.",
+            "Critical",
+            1,
+            {"string"},
+            "None.",
         }},
 };
 } // namespace redfish::message_registries::openbmc
diff --git a/redfish-core/include/utils/json_utils.hpp b/redfish-core/include/utils/json_utils.hpp
index c36ad3c..cf3227a 100644
--- a/redfish-core/include/utils/json_utils.hpp
+++ b/redfish-core/include/utils/json_utils.hpp
@@ -139,6 +139,10 @@
     else if constexpr (std::is_signed_v<Type>)
     {
         int64_t* jsonPtr = jsonValue.get_ptr<int64_t*>();
+        if (jsonPtr == nullptr)
+        {
+            return false;
+        }
         if (!checkRange<Type>(*jsonPtr, key, jsonValue, res))
         {
             return false;
@@ -150,6 +154,10 @@
                            !std::is_same_v<bool, Type>))
     {
         uint64_t* jsonPtr = jsonValue.get_ptr<uint64_t*>();
+        if (jsonPtr == nullptr)
+        {
+            return false;
+        }
         if (!checkRange<Type>(*jsonPtr, key, jsonValue, res))
         {
             return false;
diff --git a/redfish-core/include/utils/systemd_utils.hpp b/redfish-core/include/utils/systemd_utils.hpp
index 1c34fca..da1b4e2 100644
--- a/redfish-core/include/utils/systemd_utils.hpp
+++ b/redfish-core/include/utils/systemd_utils.hpp
@@ -33,9 +33,9 @@
 {
     std::string ret;
     // This ID needs to match the one in ipmid
-    sd_id128_t appId = SD_ID128_MAKE(e0, e1, 73, 76, 64, 61, 47, da, a5, 0c, d0,
-                                     cc, 64, 12, 45, 78);
-    sd_id128_t machineId = SD_ID128_NULL;
+    sd_id128_t appId{{0Xe0, 0Xe1, 0X73, 0X76, 0X64, 0X61, 0X47, 0Xda, 0Xa5,
+                      0X0c, 0Xd0, 0Xcc, 0X64, 0X12, 0X45, 0X78}};
+    sd_id128_t machineId{};
 
     if (sd_id128_get_machine_app_specific(appId, &machineId) == 0)
     {