eslint-plugin-json-schema-validator
Version:
ESLint plugin that validates data using JSON Schema Validator.
1 lines • 18.1 kB
JSON
{"$schema":"http://json-schema.org/draft-04/schema#","title":"Static Analysis Results Format (SARIF) Version 2.0.0 JSON Schema","additionalProperties":false,"type":"object","properties":{"$schema":{"type":"string","format":"uri"},"version":{"enum":["2.0.0"]},"runs":{"type":"array","minItems":1,"items":{"$ref":"#/definitions/run"}}},"required":["version","runs"],"definitions":{"attachment":{"type":"object","additionalProperties":false,"properties":{"description":{"$ref":"#/definitions/message"},"fileLocation":{"$ref":"#/definitions/fileLocation"},"regions":{"type":"array","minItems":1,"uniqueItems":true,"items":{"$ref":"#/definitions/region"}},"rectangles":{"type":"array","minItems":1,"uniqueItems":true,"items":{"$ref":"#/definitions/rectangle"}}},"required":["fileLocation"]},"codeFlow":{"additionalProperties":false,"type":"object","properties":{"message":{"$ref":"#/definitions/message"},"threadFlows":{"type":"array","minItems":1,"uniqueItems":true,"items":{"$ref":"#/definitions/threadFlow"}},"properties":{"type":"object","additionalProperties":true,"properties":{"tags":{"type":"array","uniqueItems":true,"default":[],"items":{"type":"string"}}}}},"required":["threadFlows"]},"conversion":{"additionalProperties":false,"type":"object","properties":{"tool":{"$ref":"#/definitions/tool"},"invocation":{"$ref":"#/definitions/invocation"},"analysisToolLogFiles":{"type":"array","minItems":1,"uniqueItems":true,"items":{"$ref":"#/definitions/fileLocation"}}},"required":["tool"]},"edge":{"type":"object","additionalProperties":false,"properties":{"id":{"type":"string"},"label":{"$ref":"#/definitions/message"},"sourceNodeId":{"type":"string"},"targetNodeId":{"type":"string"},"properties":{"type":"object","additionalProperties":true,"properties":{"tags":{"type":"array","uniqueItems":true,"default":[],"items":{"type":"string"}}}}},"required":["id","sourceNodeId","targetNodeId"]},"edgeTraversal":{"type":"object","additionalProperties":false,"properties":{"edgeId":{"type":"string"},"message":{"$ref":"#/definitions/message"},"finalState":{"type":"object","additionalProperties":{"type":"string"}},"stepOverEdgeCount":{"type":"integer"},"properties":{"type":"object","additionalProperties":true,"properties":{"tags":{"type":"array","uniqueItems":true,"default":[],"items":{"type":"string"}}}}},"required":["edgeId"]},"exception":{"type":"object","properties":{"kind":{"type":"string"},"message":{"type":"string"},"stack":{"$ref":"#/definitions/stack"},"innerExceptions":{"type":"array","items":{"$ref":"#/definitions/exception"}}}},"externalFiles":{"additionalProperties":false,"type":"object","properties":{"conversion":{"$ref":"#/definitions/fileLocation"},"files":{"$ref":"#/definitions/fileLocation"},"graphs":{"$ref":"#/definitions/fileLocation"},"invocations":{"type":"array","minItems":1,"uniqueItems":true,"items":{"$ref":"#/definitions/fileLocation"}},"logicalLocations":{"$ref":"#/definitions/fileLocation"},"resources":{"$ref":"#/definitions/fileLocation"},"results":{"type":"array","minItems":1,"uniqueItems":true,"items":{"$ref":"#/definitions/fileLocation"}}}},"file":{"additionalProperties":false,"type":"object","properties":{"fileLocation":{"$ref":"#/definitions/fileLocation"},"parentKey":{"type":"string"},"offset":{"type":"integer"},"length":{"type":"integer"},"roles":{"type":"array","minItems":1,"uniqueItems":true,"items":{"enum":["analysisTarget","attachment","responseFile","resultFile","standardStream","traceFile","unmodifiedFile","modifiedFile","addedFile","deletedFile","renamedFile","uncontrolledFile"]}},"mimeType":{"type":"string","pattern":"[^/]+/.+"},"contents":{"$ref":"#/definitions/fileContent"},"encoding":{"type":"string"},"hashes":{"type":"array","minItems":1,"uniqueItems":true,"items":{"$ref":"#/definitions/hash"}},"lastModifiedTime":{"type":"string","format":"date-time"},"properties":{"type":"object","additionalProperties":true,"properties":{"tags":{"type":"array","uniqueItems":true,"default":[],"items":{"type":"string"}}}}}},"fileChange":{"additionalProperties":false,"type":"object","properties":{"fileLocation":{"$ref":"#/definitions/fileLocation"},"replacements":{"type":"array","minItems":1,"items":{"$ref":"#/definitions/replacement"}}},"required":["fileLocation","replacements"]},"fileContent":{"type":"object","additionalProperties":false,"properties":{"text":{"type":"string"},"binary":{"type":"string"}}},"fileLocation":{"additionalProperties":false,"type":"object","properties":{"uri":{"type":"string","format":"uri-reference"},"uriBaseId":{"type":"string"}},"required":["uri"]},"fix":{"additionalProperties":false,"type":"object","properties":{"description":{"$ref":"#/definitions/message"},"fileChanges":{"type":"array","items":{"$ref":"#/definitions/fileChange"}}},"required":["fileChanges"]},"graph":{"type":"object","additionalProperties":false,"properties":{"id":{"type":"string"},"description":{"$ref":"#/definitions/message"},"nodes":{"type":"array","items":{"$ref":"#/definitions/node"}},"edges":{"type":"array","items":{"$ref":"#/definitions/edge"}},"properties":{"type":"object","additionalProperties":true,"properties":{"tags":{"type":"array","uniqueItems":true,"default":[],"items":{"type":"string"}}}}},"required":["id","nodes","edges"]},"graphTraversal":{"type":"object","additionalProperties":false,"properties":{"graphId":{"type":"string"},"description":{"$ref":"#/definitions/message"},"initialState":{"type":"object","additionalProperties":{"type":"string"}},"edgeTraversals":{"type":"array","items":{"$ref":"#/definitions/edgeTraversal"}},"properties":{"type":"object","additionalProperties":true,"properties":{"tags":{"type":"array","uniqueItems":true,"default":[],"items":{"type":"string"}}}}},"required":["graphId","edgeTraversals"]},"hash":{"additionalProperties":false,"type":"object","properties":{"value":{"type":"string"},"algorithm":{"type":"string"}},"required":["value","algorithm"]},"invocation":{"additionalProperties":false,"type":"object","properties":{"commandLine":{"type":"string"},"arguments":{"type":"array","items":{"type":"string"}},"responseFiles":{"type":"array","items":{"$ref":"#/definitions/fileLocation"}},"attachments":{"type":"array","minItems":1,"uniqueItems":true,"items":{"$ref":"#/definitions/attachment"}},"startTime":{"type":"string","format":"date-time"},"endTime":{"type":"string","format":"date-time"},"exitCode":{"type":"integer"},"toolNotifications":{"type":"array","items":{"$ref":"#/definitions/notification"}},"configurationNotifications":{"type":"array","items":{"$ref":"#/definitions/notification"}},"exitCodeDescription":{"type":"string"},"exitSignalName":{"type":"string"},"exitSignalNumber":{"type":"integer"},"processStartFailureMessage":{"type":"string"},"toolExecutionSuccessful":{"type":"boolean"},"machine":{"type":"string"},"account":{"type":"string"},"processId":{"type":"integer"},"executableLocation":{"$ref":"#/definitions/fileLocation"},"workingDirectory":{"$ref":"#/definitions/fileLocation"},"environmentVariables":{"type":"object","additionalProperties":true,"default":{}},"stdin":{"$ref":"#/definitions/fileLocation"},"stdout":{"$ref":"#/definitions/fileLocation"},"stderr":{"$ref":"#/definitions/fileLocation"},"stdoutStderr":{"$ref":"#/definitions/fileLocation"},"properties":{"type":"object","additionalProperties":true,"properties":{"tags":{"type":"array","uniqueItems":true,"default":[],"items":{"type":"string"}}}}}},"location":{"additionalProperties":false,"type":"object","properties":{"physicalLocation":{"$ref":"#/definitions/physicalLocation"},"fullyQualifiedLogicalName":{"type":"string"},"message":{"$ref":"#/definitions/message"},"annotations":{"type":"array","minItems":1,"uniqueItems":true,"items":{"$ref":"#/definitions/region"}},"properties":{"type":"object","additionalProperties":true,"properties":{"tags":{"type":"array","uniqueItems":true,"default":[],"items":{"type":"string"}}}}}},"logicalLocation":{"additionalProperties":false,"type":"object","properties":{"name":{"type":"string"},"fullyQualifiedName":{"type":"string"},"decoratedName":{"type":"string"},"parentKey":{"type":"string"},"kind":{"type":"string"}}},"message":{"type":"object","additionalProperties":false,"properties":{"text":{"type":"string"},"messageId":{"type":"string"},"richText":{"type":"string"},"richMessageId":{"type":"string"},"arguments":{"type":"array","items":{"type":"string"}}}},"node":{"type":"object","additionalProperties":false,"properties":{"id":{"type":"string"},"label":{"$ref":"#/definitions/message"},"location":{"$ref":"#/definitions/location"},"children":{"type":"array","uniqueItems":true,"items":{"$ref":"#/definitions/node"}},"properties":{"type":"object","additionalProperties":true,"properties":{"tags":{"type":"array","uniqueItems":true,"default":[],"items":{"type":"string"}}}}},"required":["id"]},"notification":{"type":"object","additionalProperties":false,"properties":{"id":{"type":"string"},"ruleId":{"type":"string"},"physicalLocation":{"$ref":"#/definitions/physicalLocation"},"message":{"$ref":"#/definitions/message"},"level":{"default":"warning","enum":["note","warning","error"]},"threadId":{"type":"integer"},"time":{"type":"string","format":"date-time"},"exception":{"$ref":"#/definitions/exception"},"properties":{"type":"object","additionalProperties":true,"properties":{"tags":{"type":"array","uniqueItems":true,"default":[],"items":{"type":"string"}}}}},"required":["message"]},"physicalLocation":{"additionalProperties":false,"type":"object","properties":{"id":{"type":"integer"},"fileLocation":{"$ref":"#/definitions/fileLocation"},"region":{"$ref":"#/definitions/region"},"contextRegion":{"$ref":"#/definitions/region"}},"required":["fileLocation"]},"rectangle":{"additionalProperties":false,"type":"object","properties":{"top":{"type":"number"},"left":{"type":"number"},"bottom":{"type":"number"},"right":{"type":"number"},"message":{"$ref":"#/definitions/message"}}},"region":{"additionalProperties":false,"type":"object","properties":{"startLine":{"type":"integer","minimum":1},"startColumn":{"type":"integer","minimum":1},"endLine":{"type":"integer","minimum":1},"endColumn":{"type":"integer","minimum":1},"charOffset":{"type":"integer","minimum":0},"charLength":{"type":"integer","minimum":0},"byteOffset":{"type":"integer","minimum":0},"byteLength":{"type":"integer","minimum":0},"snippet":{"$ref":"#/definitions/fileContent"},"message":{"$ref":"#/definitions/message"}}},"replacement":{"additionalProperties":false,"type":"object","properties":{"deletedRegion":{"$ref":"#/definitions/region"},"insertedContent":{"$ref":"#/definitions/fileContent"}},"required":["deletedRegion"]},"resources":{"type":"object","properties":{"messageStrings":{"type":"object","additionalProperties":{"type":"string"}},"rules":{"type":"object","additionalProperties":{"$ref":"#/definitions/rule"}}}},"result":{"additionalProperties":false,"type":"object","properties":{"ruleId":{"type":"string"},"level":{"enum":["notApplicable","pass","note","warning","error","open"]},"message":{"$ref":"#/definitions/message"},"analysisTarget":{"$ref":"#/definitions/fileLocation"},"locations":{"type":"array","minItems":1,"uniqueItems":true,"items":{"$ref":"#/definitions/location"}},"instanceGuid":{"type":"string"},"correlationGuid":{"type":"string"},"partialFingerprints":{"type":"object","additionalProperties":{"type":"string"}},"fingerprints":{"type":"object","additionalProperties":{"type":"string"}},"stacks":{"type":"array","minItems":1,"uniqueItems":true,"items":{"$ref":"#/definitions/stack"}},"codeFlows":{"type":"array","minItems":1,"uniqueItems":true,"items":{"$ref":"#/definitions/codeFlow"}},"graphs":{"type":"array","minItems":1,"uniqueItems":true,"items":{"$ref":"#/definitions/graph"}},"graphTraversals":{"type":"array","minItems":1,"uniqueItems":true,"items":{"$ref":"#/definitions/graphTraversal"}},"relatedLocations":{"type":"array","minItems":1,"uniqueItems":true,"items":{"$ref":"#/definitions/location"}},"suppressionStates":{"type":"array","items":{"enum":["suppressedInSource","suppressedExternally"]}},"baselineState":{"enum":["new","existing","absent"]},"attachments":{"type":"array","minItems":1,"uniqueItems":true,"items":{"$ref":"#/definitions/attachment"}},"workItemUris":{"type":"array","minItems":1,"uniqueItems":true,"items":{"type":"string","format":"uri"}},"conversionProvenance":{"type":"array","minItems":1,"uniqueItems":true,"items":{"$ref":"#/definitions/physicalLocation"}},"fixes":{"type":"array","minItems":1,"uniqueItems":true,"items":{"$ref":"#/definitions/fix"}},"properties":{"type":"object","additionalProperties":true,"properties":{"tags":{"type":"array","uniqueItems":true,"default":[],"items":{"type":"string"}}}}}},"rule":{"additionalProperties":false,"type":"object","properties":{"id":{"type":"string"},"name":{"$ref":"#/definitions/message"},"shortDescription":{"$ref":"#/definitions/message"},"fullDescription":{"$ref":"#/definitions/message"},"messageStrings":{"type":"object","additionalProperties":{"type":"string"}},"richMessageStrings":{"type":"object","additionalProperties":{"type":"string"}},"configuration":{"$ref":"#/definitions/ruleConfiguration"},"helpUri":{"type":"string","format":"uri"},"help":{"$ref":"#/definitions/message"},"properties":{"type":"object","additionalProperties":true,"properties":{"tags":{"type":"array","uniqueItems":true,"default":[],"items":{"type":"string"}}}}},"required":["id"]},"ruleConfiguration":{"type":"object","additionalProperties":false,"properties":{"enabled":{"type":"boolean"},"defaultLevel":{"default":"warning","enum":["note","warning","error","open"]},"parameters":{"type":"object","additionalProperties":true,"properties":{"tags":{"type":"array","uniqueItems":true,"default":[],"items":{"type":"string"}}}}}},"run":{"additionalProperties":false,"type":"object","properties":{"tool":{"$ref":"#/definitions/tool"},"invocations":{"type":"array","minItems":1,"uniqueItems":true,"items":{"$ref":"#/definitions/invocation"}},"conversion":{"$ref":"#/definitions/conversion"},"versionControlProvenance":{"type":"array","minItems":1,"uniqueItems":true,"items":{"$ref":"#/definitions/versionControlDetails"}},"originalUriBaseIds":{"type":"object","additionalProperties":{"type":"string","format":"uri"}},"files":{"type":"object","additionalProperties":{"$ref":"#/definitions/file"}},"logicalLocations":{"type":"object","additionalProperties":{"$ref":"#/definitions/logicalLocation"}},"graphs":{"type":"array","minItems":1,"uniqueItems":true,"items":{"$ref":"#/definitions/graph"}},"results":{"type":"array","minItems":0,"items":{"$ref":"#/definitions/result"}},"resources":{"$ref":"#/definitions/resources"},"instanceGuid":{"type":"string"},"correlationGuid":{"type":"string"},"logicalId":{"type":"string"},"description":{"$ref":"#/definitions/message"},"automationLogicalId":{"type":"string"},"baselineInstanceGuid":{"type":"string"},"architecture":{"type":"string"},"richMessageMimeType":{"type":"string","default":"text/markdown;variant=GFM"},"redactionToken":{"type":"string"},"defaultFileEncoding":{"type":"string"},"columnKind":{"enum":["utf16CodeUnits","unicodeCodePoints"]},"properties":{"type":"object","additionalProperties":true,"properties":{"tags":{"type":"array","uniqueItems":true,"default":[],"items":{"type":"string"}}}}},"required":["tool"]},"stack":{"additionalProperties":false,"type":"object","properties":{"message":{"$ref":"#/definitions/message"},"frames":{"type":"array","minItems":1,"items":{"$ref":"#/definitions/stackFrame"}},"properties":{"type":"object","additionalProperties":true,"properties":{"tags":{"type":"array","uniqueItems":true,"default":[],"items":{"type":"string"}}}}},"required":["frames"]},"stackFrame":{"additionalProperties":false,"type":"object","properties":{"location":{"$ref":"#/definitions/location"},"module":{"type":"string"},"threadId":{"type":"integer"},"address":{"type":"integer"},"offset":{"type":"integer"},"parameters":{"type":"array","items":{"type":"string","default":[]}},"properties":{"type":"object","additionalProperties":true,"properties":{"tags":{"type":"array","uniqueItems":true,"default":[],"items":{"type":"string"}}}}}},"threadFlow":{"type":"object","properties":{"id":{"type":"string"},"message":{"$ref":"#/definitions/message"},"locations":{"type":"array","minItems":1,"items":{"$ref":"#/definitions/threadFlowLocation"}},"properties":{"type":"object","additionalProperties":true,"properties":{"tags":{"type":"array","uniqueItems":true,"default":[],"items":{"type":"string"}}}}},"required":["locations"]},"threadFlowLocation":{"additionalProperties":false,"type":"object","properties":{"step":{"type":"integer","minimum":0},"location":{"$ref":"#/definitions/location"},"stack":{"$ref":"#/definitions/stack"},"kind":{"type":"string"},"module":{"type":"string"},"state":{"type":"object"},"nestingLevel":{"type":"integer"},"executionOrder":{"type":"integer"},"timestamp":{"type":"string","format":"date-time"},"importance":{"enum":["important","essential","unimportant"]},"properties":{"type":"object","additionalProperties":true,"properties":{"tags":{"type":"array","uniqueItems":true,"default":[],"items":{"type":"string"}}}}}},"tool":{"additionalProperties":false,"type":"object","properties":{"name":{"type":"string"},"fullName":{"type":"string"},"version":{"type":"string"},"semanticVersion":{"type":"string"},"fileVersion":{"type":"string","pattern":"[0-9]+(\\.[0-9]+){3}"},"downloadUri":{"type":"string","format":"uri"},"sarifLoggerVersion":{"type":"string"},"language":{"type":"string","default":"en-US"},"properties":{"type":"object","additionalProperties":true,"properties":{"tags":{"type":"array","uniqueItems":true,"default":[],"items":{"type":"string"}}}}},"required":["name"]},"versionControlDetails":{"type":"object","additionalProperties":false,"properties":{"uri":{"type":"string","format":"uri"},"revisionId":{"type":"string"},"branch":{"type":"string"},"tag":{"type":"string"},"timestamp":{"type":"string","format":"date-time"},"properties":{"type":"object","additionalProperties":true,"properties":{"tags":{"type":"array","uniqueItems":true,"default":[],"items":{"type":"string"}}}}},"required":["uri"]}}}