In order to enhance the information about error messages, we're about to handle them using Error objects.
Error objects will contain different aspects of information about the error that occurred. That object can be thereafter used as we like, e.g. for generating a small narrative intended for humans, constructing a JSON report intended for application, generating an HTML summary, etc.
The purpose of this issue is to draft the original design of such Error objects. The actual messaging and exploitation (e.g. narratives, json objects, etc.) will be discussed in a separate issue.
The indicative contents of the Error Message could be:
identifier: e.g. a UUID
timestamp: when the error occurred
type: selected from a controlled vocabulary (e.g. missing generator, missing XPATH, missing resources, etc.)
severity: selected from a controlled vocabulary (e.g. warning, error, fatal)
mapping: the number of the mapping were the error was thrown (this will allow spotting the cause easily)
link: the number of the link (inside the mapping) were the error was thrown (this will allow spotting the cause easily)
description: a short narrative describing the error
suggested_resolution: a short narrative describing how to deal with the problem
In order to enhance the information about error messages, we're about to handle them using Error objects. Error objects will contain different aspects of information about the error that occurred. That object can be thereafter used as we like, e.g. for generating a small narrative intended for humans, constructing a JSON report intended for application, generating an HTML summary, etc.
The purpose of this issue is to draft the original design of such Error objects. The actual messaging and exploitation (e.g. narratives, json objects, etc.) will be discussed in a separate issue.
The indicative contents of the Error Message could be: