### set namespace default namespace = "https://svs-www.informatik.uni-hamburg.de/softsec/projects/sectoolers/ns/scan-result/0.9/" ### root element start = scan-result scan-result = element scan-result { element timestamp { text }, element host { text }, ### files that were scanned element files { file+ }, ### information about the tools used in the scan element tools { element tool { element name { text }, element version { text }, element tool-config { element command-line { text } }? }+ }, ### configuration of the master tool (should probably be optional) element configuration { text }, ### ability to filter results, e.g. for display in IDE element filter { element false-positive-list { text }+ }?, element problems { element problem { element toolname { text }, element severity { xsd:float { minInclusive = "0" maxInclusive = "1" }}?, element probability { xsd:float { minInclusive = "0" maxInclusive = "1" }}?, element category { "abstract" | "aliasing" | "alluse" | "ansi" | "arrays" | "booleans" | "comments" | "syncomments" | "complete" | "controlflow" | "debug" | "declarations" | "definition" | "directories" | "display" | "effect" | "errors" | "export" | "exposure" | "extensible" | "files" | "format" | "globals" | "headers" | "help" | "memorybounds" | "hints" | "systemfunctions" | "implicit" | "initializations" | "iterators" | "leaks" | "libraries" | "limits" | "macros" | "memory" | "modification" | "names" | "null" | "numbers" | "operations" | "parameters" | "performance" | "pointers" | "predicates" | "prefixes" | "preproc" | "prototypes" | "released" | "returnvals" | "security" | "specifications" | "suppress" | "typeequivalence" | "undefined" | "unrecognized" | "warnuse" | "its4" | "syntax" | "type" | "other-error" }, ### where the error was found location, ### if available, a trace to the error-location trace? }* } } ### is used several times, thus defined only once file = element file { text } ### is used also by trace, thus defined here location = element location { file, element line { xsd:positiveInteger }?, element column { xsd:positiveInteger }?, element function { text }?, element field { text }?, ### the error message from the tool element text { text }?, ### possible explanation of the error from the tool element explanation { text }? } ### a trace consists of several locations trace = element trace { location+ }