SpecLynx · Schema

SpecLynx Validation Result

Schema for a diagnostic result produced by SpecLynx validation of an API specification

API DesignAsyncAPIDeveloper ToolsJSON SchemaOpenAPIToolkitVSCode

Properties

Name Type Description
severity string The severity level of the diagnostic message
message string Human-readable diagnostic message describing the issue
code string Machine-readable code identifying the rule or validation that fired
source string The validation source that produced this diagnostic
range object Location in the specification document where the issue was found
path array JSON path to the location in the spec that triggered the diagnostic
specificationFormat string The specification format that was validated
View JSON Schema on GitHub

JSON Schema

speclynx-validation-result-schema.json Raw ↑
{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "$id": "https://raw.githubusercontent.com/api-evangelist/speclynx/main/json-schema/speclynx-validation-result-schema.json",
  "title": "SpecLynx Validation Result",
  "description": "Schema for a diagnostic result produced by SpecLynx validation of an API specification",
  "type": "object",
  "properties": {
    "severity": {
      "type": "string",
      "enum": ["error", "warning", "information", "hint"],
      "description": "The severity level of the diagnostic message"
    },
    "message": {
      "type": "string",
      "description": "Human-readable diagnostic message describing the issue"
    },
    "code": {
      "type": "string",
      "description": "Machine-readable code identifying the rule or validation that fired"
    },
    "source": {
      "type": "string",
      "enum": ["json-schema", "spectral", "semantic-validation", "semantic-linting"],
      "description": "The validation source that produced this diagnostic"
    },
    "range": {
      "type": "object",
      "description": "Location in the specification document where the issue was found",
      "properties": {
        "start": {
          "type": "object",
          "properties": {
            "line": {"type": "integer", "minimum": 0},
            "character": {"type": "integer", "minimum": 0}
          },
          "required": ["line", "character"]
        },
        "end": {
          "type": "object",
          "properties": {
            "line": {"type": "integer", "minimum": 0},
            "character": {"type": "integer", "minimum": 0}
          },
          "required": ["line", "character"]
        }
      },
      "required": ["start", "end"]
    },
    "path": {
      "type": "array",
      "items": {"type": "string"},
      "description": "JSON path to the location in the spec that triggered the diagnostic"
    },
    "specificationFormat": {
      "type": "string",
      "enum": ["openapi-2", "openapi-3.0", "openapi-3.1", "asyncapi-2", "arazzo-1"],
      "description": "The specification format that was validated"
    }
  },
  "required": ["severity", "message", "source"]
}