Download decision.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="list-id">
<xs:restriction base="xs:string">
<xs:pattern value='[A-Z_][A-Z0-9_]+(;[A-Z_][A-Z0-9_]+)*' />
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="categories">
<xs:restriction base="xs:string">
<xs:pattern value='[A-Z_][A-Z0-9_]+\.[A-Z_][A-Z0-9_]+(;[A-Z_][A-Z0-9_]+\.[A-Z_][A-Z0-9_]+)*' />
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="criterion-type">
<xs:restriction base="id">
<xs:enumeration value="BENEFIT"/>
<xs:enumeration value="COST"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="preference-level">
<xs:restriction base="id">
<xs:enumeration value="VERY_LOW"/>
<xs:enumeration value="LOW"/>
<xs:enumeration value="MEDIUM"/>
<xs:enumeration value="HIGH"/>
<xs:enumeration value="VERY_HIGH"/>
</xs:restriction>
</xs:simpleType>
<xs:complexType name="elements">
<xs:sequence>
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:element ref="Package"/>
<xs:element ref="package"/>
<xs:element ref="DecisionCriteria"/>
<xs:element ref="DecisionCriterion"/>
<xs:element ref="FindingsActionPlan"/>
</xs:choice>
</xs:sequence>
</xs:complexType>
<xs:element name="Bundle" type="elements"/>
<xs:element name="Package" type="elements"/>
<xs:element name="package" type="elements"/>
<xs:element name="DecisionCriteria" type="elements"/>
<xs:element name="DecisionCriterion">
<xs:complexType>
<xs:sequence>
<xs:element ref="Triggers"/>
</xs:sequence>
<xs:attribute name="categories" type="categories"/>
<xs:attribute name="dcId" use="required" type="id"/>
<xs:attribute name="excludingTypes" type="list-id"/>
<xs:attribute name="families" type="list-id"/>
<xs:attribute name="roles" type="list-id"/>
<xs:attribute name="targetArtefactTypes" use="required" type="list-id"/>
</xs:complexType>
</xs:element>
<xs:element name="Triggers">
<xs:complexType>
<xs:sequence>
<xs:element maxOccurs="unbounded" ref="Trigger"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="Trigger">
<xs:complexType>
<xs:sequence>
<xs:element maxOccurs="unbounded" ref="Test"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="Test">
<xs:complexType>
<xs:attribute name="bounds"/>
<xs:attribute name="descrId" type="id"/>
<xs:attribute name="expr" use="required"/>
<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="suspect"/>
</xs:complexType>
</xs:element>
<xs:element name="FindingsActionPlan">
<xs:complexType>
<xs:sequence>
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:element ref="CategoryCriterion"/>
<xs:element ref="OccurrencesCriterion"/>
<xs:element ref="VariableCriterion"/>
</xs:choice>
</xs:sequence>
<xs:attribute name="limit" type="xs:integer"/>
<xs:attribute name="priorityScaleId" type="id"/>
</xs:complexType>
</xs:element>
<xs:element name="CategoryCriterion">
<xs:complexType>
<xs:attribute name="type" type="criterion-type"/>
<xs:attribute name="preferenceLevel" type="preference-level"/>
<xs:attribute name="scaleId" use="required" type="id"/>
<xs:attribute name="excludeLevels" type="list-id"/>
</xs:complexType>
</xs:element>
<xs:element name="OccurrencesCriterion">
<xs:complexType>
<xs:attribute name="type" type="criterion-type"/>
<xs:attribute name="preferenceLevel" type="preference-level"/>
<xs:attribute name="scaleId" type="id"/>
<xs:attribute name="excludeLevels" type="list-id"/>
</xs:complexType>
</xs:element>
<xs:element name="VariableCriterion">
<xs:complexType>
<xs:attribute name="type" type="criterion-type"/>
<xs:attribute name="preferenceLevel" type="preference-level"/>
<xs:attribute name="indicatorId" use="required" type="id"/>
<xs:attribute name="excludeLevels" type="list-id"/>
</xs:complexType>
</xs:element>
</xs:schema>