Download input-data-2.xsd<?xml version="1.0" encoding="UTF-8"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified">
<xs:simpleType name="id">
<xs:restriction base="xs:string">
<xs:pattern value="[A-Z_][A-Z0-9_]+" />
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="relax-status">
<xs:restriction base="id">
<xs:enumeration value="RELAXED_DEROGATION"/>
<xs:enumeration value="RELAXED_LEGACY"/>
<xs:enumeration value="RELAXED_FALSE_POSITIVE"/>
</xs:restriction>
</xs:simpleType>
<xs:element name="bundle">
<xs:complexType>
<xs:choice maxOccurs="unbounded">
<xs:element ref="artifact"/>
<xs:element ref="finding"/>
<xs:element ref="info"/>
<xs:element ref="link"/>
<xs:element ref="metric"/>
</xs:choice>
<xs:attribute name="version" use="required" type="xs:integer" fixed="2"/>
</xs:complexType>
</xs:element>
<xs:element name="artifact">
<xs:complexType>
<xs:sequence>
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:element ref="artifact"/>
<xs:element ref="finding"/>
<xs:element ref="metric"/>
<xs:element ref="key"/>
<xs:element ref="info"/>
<xs:element ref="link"/>
<xs:element ref="milestone"/>
</xs:choice>
</xs:sequence>
<xs:attribute name="alias"/>
<xs:attribute name="art-location"/>
<xs:attribute name="id"/>
<xs:attribute name="local-art-location"/>
<xs:attribute name="local-key"/>
<xs:attribute name="local-parent"/>
<xs:attribute name="location"/>
<xs:attribute name="name"/>
<xs:attribute name="parent"/>
<xs:attribute name="path"/>
<xs:attribute name="type" use="required" type="id"/>
<xs:attribute name="view-path"/>
</xs:complexType>
</xs:element>
<xs:element name="info">
<xs:complexType>
<xs:attribute name="local-ref"/>
<xs:attribute name="name" use="required" type="id"/>
<xs:attribute name="ref"/>
<xs:attribute name="tool"/>
<xs:attribute name="value" use="required"/>
</xs:complexType>
</xs:element>
<xs:element name="key">
<xs:complexType>
<xs:attribute name="value" use="required"/>
</xs:complexType>
</xs:element>
<xs:element name="metric">
<xs:complexType>
<xs:attribute name="local-ref"/>
<xs:attribute name="name" use="required" type="id"/>
<xs:attribute name="ref"/>
<xs:attribute name="tool"/>
<xs:attribute name="value" type="xs:decimal" use="required"/>
</xs:complexType>
</xs:element>
<xs:element name="link">
<xs:complexType>
<xs:attribute name="dst"/>
<xs:attribute name="local-dst" type="xs:integer"/>
<xs:attribute name="local-src" type="xs:integer"/>
<xs:attribute name="name" use="required" type="id"/>
<xs:attribute name="src"/>
</xs:complexType>
</xs:element>
<xs:element name="finding">
<xs:complexType>
<xs:sequence>
<xs:element minOccurs="0" maxOccurs="unbounded" ref="location"/>
<xs:element minOccurs="0" maxOccurs="1" ref="relax"/>
</xs:sequence>
<xs:attribute name="descr"/>
<xs:attribute name="local-ref"/>
<xs:attribute name="location" use="required"/>
<xs:attribute name="name" use="required" type="id"/>
<xs:attribute name="p0"/>
<xs:attribute name="p1"/>
<xs:attribute name="p2"/>
<xs:attribute name="p3"/>
<xs:attribute name="p4"/>
<xs:attribute name="p5"/>
<xs:attribute name="p6"/>
<xs:attribute name="p7"/>
<xs:attribute name="p8"/>
<xs:attribute name="p9"/>
<xs:attribute name="ref"/>
<xs:attribute name="tool"/>
</xs:complexType>
</xs:element>
<xs:element name="location">
<xs:complexType>
<xs:attribute name="local-ref"/>
<xs:attribute name="location" use="required"/>
<xs:attribute name="ref"/>
</xs:complexType>
</xs:element>
<xs:element name="relax">
<xs:complexType>
<xs:simpleContent>
<xs:extension base="xs:string">
<xs:attribute name="status" type="relax-status"/>
</xs:extension>
</xs:simpleContent>
</xs:complexType>
</xs:element>
<xs:element name="milestone">
<xs:complexType>
<xs:sequence>
<xs:element minOccurs="0" maxOccurs="unbounded" ref="goal"/>
</xs:sequence>
<xs:attribute name="date" type="xs:integer"/>
<xs:attribute name="name" use="required" type="id"/>
</xs:complexType>
</xs:element>
<xs:element name="goal">
<xs:complexType>
<xs:attribute name="name" use="required" type="id"/>
<xs:attribute name="value" use="required" type="xs:decimal"/>
</xs:complexType>
</xs:element>
</xs:schema>