You've already forked lv-civdef-drone-threat-public-address
Import UAPF package
280 lines
14 KiB
XML
280 lines
14 KiB
XML
<?xml version="1.0" encoding="UTF-8"?>
|
|
<definitions xmlns="https://www.omg.org/spec/DMN/20191111/MODEL/"
|
|
xmlns:dmndi="https://www.omg.org/spec/DMN/20191111/DMNDI/"
|
|
xmlns:dc="http://www.omg.org/spec/DMN/20180521/DC/"
|
|
xmlns:di="http://www.omg.org/spec/DMN/20180521/DI/"
|
|
id="defs_air_threat_decisions"
|
|
name="Air Threat Decisions"
|
|
namespace="http://uapf.dev/lv.civdef.drone-threat-public-address/dmn">
|
|
|
|
<inputData id="In_ObjectType" name="Object type">
|
|
<variable id="v_objectType" name="objectType" typeRef="string" />
|
|
</inputData>
|
|
<inputData id="In_AirspaceStatus" name="Airspace entry status">
|
|
<variable id="v_airspaceStatus" name="airspaceStatus" typeRef="string" />
|
|
</inputData>
|
|
<inputData id="In_TrajectoryToward" name="Trajectory toward populated area">
|
|
<variable id="v_trajectoryToward" name="trajectoryTowardPopulated" typeRef="boolean" />
|
|
</inputData>
|
|
<inputData id="In_DistanceKm" name="Distance to nearest populated area (km)">
|
|
<variable id="v_distanceKm" name="distanceToPopulatedKm" typeRef="number" />
|
|
</inputData>
|
|
<inputData id="In_BorderTier" name="Border-proximity tier">
|
|
<variable id="v_borderTier" name="borderProximityTier" typeRef="string" />
|
|
</inputData>
|
|
<inputData id="In_CorridorMunis" name="Predicted corridor municipalities">
|
|
<variable id="v_corridorMunis" name="corridorMunicipalities" typeRef="string" />
|
|
</inputData>
|
|
<inputData id="In_PositiveHostileId" name="Positive hostile identification">
|
|
<variable id="v_posHostileId" name="positiveHostileId" typeRef="boolean" />
|
|
</inputData>
|
|
<inputData id="In_OverPopulated" name="Object currently over populated area">
|
|
<variable id="v_overPopulated" name="overPopulatedArea" typeRef="boolean" />
|
|
</inputData>
|
|
<inputData id="In_DebrisClear" name="Debris fall-zone clear">
|
|
<variable id="v_debrisClear" name="debrisZoneClear" typeRef="boolean" />
|
|
</inputData>
|
|
<inputData id="In_FiringReady" name="Ground firing position ready">
|
|
<variable id="v_firingReady" name="firingPositionReady" typeRef="boolean" />
|
|
</inputData>
|
|
<inputData id="In_BapOnStation" name="NATO BAP on station">
|
|
<variable id="v_bapOnStation" name="bapOnStation" typeRef="boolean" />
|
|
</inputData>
|
|
|
|
<decision id="Decision_AirThreatSeverity" name="Air threat severity">
|
|
<variable id="v_threatLevel" name="threatLevel" typeRef="string" />
|
|
<informationRequirement id="ir_d1_1"><requiredInput href="#In_ObjectType" /></informationRequirement>
|
|
<informationRequirement id="ir_d1_2"><requiredInput href="#In_AirspaceStatus" /></informationRequirement>
|
|
<informationRequirement id="ir_d1_3"><requiredInput href="#In_TrajectoryToward" /></informationRequirement>
|
|
<informationRequirement id="ir_d1_4"><requiredInput href="#In_DistanceKm" /></informationRequirement>
|
|
<decisionTable id="dt_d1" hitPolicy="FIRST">
|
|
<input id="d1_i1" label="Object type">
|
|
<inputExpression typeRef="string"><text>objectType</text></inputExpression>
|
|
</input>
|
|
<input id="d1_i2" label="Airspace status">
|
|
<inputExpression typeRef="string"><text>airspaceStatus</text></inputExpression>
|
|
</input>
|
|
<input id="d1_i3" label="Toward populated area">
|
|
<inputExpression typeRef="boolean"><text>trajectoryTowardPopulated</text></inputExpression>
|
|
</input>
|
|
<input id="d1_i4" label="Distance km">
|
|
<inputExpression typeRef="number"><text>distanceToPopulatedKm</text></inputExpression>
|
|
</input>
|
|
<output id="d1_o1" label="Threat level" name="threatLevel" typeRef="string" />
|
|
<rule id="d1_r1">
|
|
<inputEntry><text>"unknown","drone"</text></inputEntry>
|
|
<inputEntry><text>"crossed","inside"</text></inputEntry>
|
|
<inputEntry><text>true</text></inputEntry>
|
|
<inputEntry><text><= 15</text></inputEntry>
|
|
<outputEntry><text>"high"</text></outputEntry>
|
|
</rule>
|
|
<rule id="d1_r2">
|
|
<inputEntry><text>"unknown","drone"</text></inputEntry>
|
|
<inputEntry><text>"crossed","inside"</text></inputEntry>
|
|
<inputEntry><text>true</text></inputEntry>
|
|
<inputEntry><text>> 15</text></inputEntry>
|
|
<outputEntry><text>"elevated"</text></outputEntry>
|
|
</rule>
|
|
<rule id="d1_r3">
|
|
<inputEntry><text>"unknown","drone"</text></inputEntry>
|
|
<inputEntry><text>"crossed","inside"</text></inputEntry>
|
|
<inputEntry><text>false</text></inputEntry>
|
|
<inputEntry><text>-</text></inputEntry>
|
|
<outputEntry><text>"elevated"</text></outputEntry>
|
|
</rule>
|
|
<rule id="d1_r4">
|
|
<inputEntry><text>"unknown","drone"</text></inputEntry>
|
|
<inputEntry><text>"approaching"</text></inputEntry>
|
|
<inputEntry><text>-</text></inputEntry>
|
|
<inputEntry><text>-</text></inputEntry>
|
|
<outputEntry><text>"low"</text></outputEntry>
|
|
</rule>
|
|
<rule id="d1_r5">
|
|
<inputEntry><text>-</text></inputEntry>
|
|
<inputEntry><text>-</text></inputEntry>
|
|
<inputEntry><text>-</text></inputEntry>
|
|
<inputEntry><text>-</text></inputEntry>
|
|
<outputEntry><text>"none"</text></outputEntry>
|
|
</rule>
|
|
</decisionTable>
|
|
</decision>
|
|
|
|
<decision id="Decision_CellBroadcastScope" name="Cell-broadcast scope">
|
|
<variable id="v_broadcastScope" name="broadcastScope" typeRef="string" />
|
|
<informationRequirement id="ir_d2_1"><requiredDecision href="#Decision_AirThreatSeverity" /></informationRequirement>
|
|
<informationRequirement id="ir_d2_2"><requiredInput href="#In_BorderTier" /></informationRequirement>
|
|
<informationRequirement id="ir_d2_3"><requiredInput href="#In_CorridorMunis" /></informationRequirement>
|
|
<decisionTable id="dt_d2" hitPolicy="FIRST">
|
|
<input id="d2_i1" label="Threat level">
|
|
<inputExpression typeRef="string"><text>threatLevel</text></inputExpression>
|
|
</input>
|
|
<input id="d2_i2" label="Border-proximity tier">
|
|
<inputExpression typeRef="string"><text>borderProximityTier</text></inputExpression>
|
|
</input>
|
|
<output id="d2_o1" label="Alert municipalities" name="alertMunicipalities" typeRef="string" />
|
|
<output id="d2_o2" label="Message template" name="messageTemplate" typeRef="string" />
|
|
<rule id="d2_r1">
|
|
<inputEntry><text>"high"</text></inputEntry>
|
|
<inputEntry><text>-</text></inputEntry>
|
|
<outputEntry><text>"corridorMunicipalities + all tier-1 border municipalities"</text></outputEntry>
|
|
<outputEntry><text>"MSG_DRONE_IMMINENT"</text></outputEntry>
|
|
</rule>
|
|
<rule id="d2_r2">
|
|
<inputEntry><text>"elevated"</text></inputEntry>
|
|
<inputEntry><text>"tier1","tier2"</text></inputEntry>
|
|
<outputEntry><text>"corridorMunicipalities"</text></outputEntry>
|
|
<outputEntry><text>"MSG_DRONE_POSSIBLE"</text></outputEntry>
|
|
</rule>
|
|
<rule id="d2_r3">
|
|
<inputEntry><text>"elevated"</text></inputEntry>
|
|
<inputEntry><text>"tier3"</text></inputEntry>
|
|
<outputEntry><text>"corridorMunicipalities"</text></outputEntry>
|
|
<outputEntry><text>"MSG_AIRSPACE_MONITORING"</text></outputEntry>
|
|
</rule>
|
|
<rule id="d2_r4">
|
|
<inputEntry><text>"low"</text></inputEntry>
|
|
<inputEntry><text>-</text></inputEntry>
|
|
<outputEntry><text>"none - municipal commissions informed only"</text></outputEntry>
|
|
<outputEntry><text>"MSG_NONE"</text></outputEntry>
|
|
</rule>
|
|
<rule id="d2_r5">
|
|
<inputEntry><text>"none"</text></inputEntry>
|
|
<inputEntry><text>-</text></inputEntry>
|
|
<outputEntry><text>"none"</text></outputEntry>
|
|
<outputEntry><text>"MSG_NONE"</text></outputEntry>
|
|
</rule>
|
|
</decisionTable>
|
|
</decision>
|
|
|
|
<decision id="Decision_InterceptionAuthorization" name="Interception authorization">
|
|
<variable id="v_interception" name="interception" typeRef="string" />
|
|
<informationRequirement id="ir_d3_1"><requiredDecision href="#Decision_AirThreatSeverity" /></informationRequirement>
|
|
<informationRequirement id="ir_d3_2"><requiredInput href="#In_PositiveHostileId" /></informationRequirement>
|
|
<informationRequirement id="ir_d3_3"><requiredInput href="#In_OverPopulated" /></informationRequirement>
|
|
<informationRequirement id="ir_d3_4"><requiredInput href="#In_DebrisClear" /></informationRequirement>
|
|
<informationRequirement id="ir_d3_5"><requiredInput href="#In_FiringReady" /></informationRequirement>
|
|
<informationRequirement id="ir_d3_6"><requiredInput href="#In_BapOnStation" /></informationRequirement>
|
|
<decisionTable id="dt_d3" hitPolicy="FIRST">
|
|
<input id="d3_i1" label="Threat level">
|
|
<inputExpression typeRef="string"><text>threatLevel</text></inputExpression>
|
|
</input>
|
|
<input id="d3_i2" label="Over populated area">
|
|
<inputExpression typeRef="boolean"><text>overPopulatedArea</text></inputExpression>
|
|
</input>
|
|
<input id="d3_i3" label="Debris zone clear">
|
|
<inputExpression typeRef="boolean"><text>debrisZoneClear</text></inputExpression>
|
|
</input>
|
|
<input id="d3_i4" label="Firing position ready">
|
|
<inputExpression typeRef="boolean"><text>firingPositionReady</text></inputExpression>
|
|
</input>
|
|
<input id="d3_i5" label="BAP on station">
|
|
<inputExpression typeRef="boolean"><text>bapOnStation</text></inputExpression>
|
|
</input>
|
|
<output id="d3_o1" label="Interception decision" name="interceptionDecision" typeRef="string" />
|
|
<output id="d3_o2" label="Rationale code" name="rationaleCode" typeRef="string" />
|
|
<rule id="d3_r1">
|
|
<inputEntry><text>-</text></inputEntry>
|
|
<inputEntry><text>true</text></inputEntry>
|
|
<inputEntry><text>-</text></inputEntry>
|
|
<inputEntry><text>-</text></inputEntry>
|
|
<inputEntry><text>-</text></inputEntry>
|
|
<outputEntry><text>"hold"</text></outputEntry>
|
|
<outputEntry><text>"R_CIVILIAN_RISK"</text></outputEntry>
|
|
</rule>
|
|
<rule id="d3_r2">
|
|
<inputEntry><text>-</text></inputEntry>
|
|
<inputEntry><text>false</text></inputEntry>
|
|
<inputEntry><text>false</text></inputEntry>
|
|
<inputEntry><text>-</text></inputEntry>
|
|
<inputEntry><text>-</text></inputEntry>
|
|
<outputEntry><text>"hold"</text></outputEntry>
|
|
<outputEntry><text>"R_DEBRIS_RISK"</text></outputEntry>
|
|
</rule>
|
|
<rule id="d3_r3">
|
|
<inputEntry><text>"high","elevated"</text></inputEntry>
|
|
<inputEntry><text>false</text></inputEntry>
|
|
<inputEntry><text>true</text></inputEntry>
|
|
<inputEntry><text>true</text></inputEntry>
|
|
<inputEntry><text>-</text></inputEntry>
|
|
<outputEntry><text>"engage"</text></outputEntry>
|
|
<outputEntry><text>"R_GROUND_PGA"</text></outputEntry>
|
|
</rule>
|
|
<rule id="d3_r4">
|
|
<inputEntry><text>"high","elevated"</text></inputEntry>
|
|
<inputEntry><text>false</text></inputEntry>
|
|
<inputEntry><text>true</text></inputEntry>
|
|
<inputEntry><text>false</text></inputEntry>
|
|
<inputEntry><text>true</text></inputEntry>
|
|
<outputEntry><text>"engage"</text></outputEntry>
|
|
<outputEntry><text>"R_BAP_AIR"</text></outputEntry>
|
|
</rule>
|
|
<rule id="d3_r5">
|
|
<inputEntry><text>-</text></inputEntry>
|
|
<inputEntry><text>-</text></inputEntry>
|
|
<inputEntry><text>-</text></inputEntry>
|
|
<inputEntry><text>-</text></inputEntry>
|
|
<inputEntry><text>-</text></inputEntry>
|
|
<outputEntry><text>"hold"</text></outputEntry>
|
|
<outputEntry><text>"R_CRITERIA_NOT_MET"</text></outputEntry>
|
|
</rule>
|
|
</decisionTable>
|
|
</decision>
|
|
|
|
<dmndi:DMNDI>
|
|
<dmndi:DMNDiagram id="drd_1">
|
|
<dmndi:DMNShape id="s_d1" dmnElementRef="Decision_AirThreatSeverity">
|
|
<dc:Bounds x="360" y="80" width="180" height="80" />
|
|
</dmndi:DMNShape>
|
|
<dmndi:DMNShape id="s_d2" dmnElementRef="Decision_CellBroadcastScope">
|
|
<dc:Bounds x="180" y="240" width="180" height="80" />
|
|
</dmndi:DMNShape>
|
|
<dmndi:DMNShape id="s_d3" dmnElementRef="Decision_InterceptionAuthorization">
|
|
<dc:Bounds x="540" y="240" width="180" height="80" />
|
|
</dmndi:DMNShape>
|
|
<dmndi:DMNShape id="s_in_objtype" dmnElementRef="In_ObjectType">
|
|
<dc:Bounds x="120" y="-40" width="140" height="50" />
|
|
</dmndi:DMNShape>
|
|
<dmndi:DMNShape id="s_in_airspace" dmnElementRef="In_AirspaceStatus">
|
|
<dc:Bounds x="290" y="-40" width="140" height="50" />
|
|
</dmndi:DMNShape>
|
|
<dmndi:DMNShape id="s_in_traj" dmnElementRef="In_TrajectoryToward">
|
|
<dc:Bounds x="460" y="-40" width="140" height="50" />
|
|
</dmndi:DMNShape>
|
|
<dmndi:DMNShape id="s_in_dist" dmnElementRef="In_DistanceKm">
|
|
<dc:Bounds x="630" y="-40" width="140" height="50" />
|
|
</dmndi:DMNShape>
|
|
<dmndi:DMNShape id="s_in_tier" dmnElementRef="In_BorderTier">
|
|
<dc:Bounds x="0" y="380" width="140" height="50" />
|
|
</dmndi:DMNShape>
|
|
<dmndi:DMNShape id="s_in_corr" dmnElementRef="In_CorridorMunis">
|
|
<dc:Bounds x="160" y="380" width="140" height="50" />
|
|
</dmndi:DMNShape>
|
|
<dmndi:DMNShape id="s_in_phid" dmnElementRef="In_PositiveHostileId">
|
|
<dc:Bounds x="340" y="380" width="140" height="50" />
|
|
</dmndi:DMNShape>
|
|
<dmndi:DMNShape id="s_in_overpop" dmnElementRef="In_OverPopulated">
|
|
<dc:Bounds x="500" y="380" width="140" height="50" />
|
|
</dmndi:DMNShape>
|
|
<dmndi:DMNShape id="s_in_debris" dmnElementRef="In_DebrisClear">
|
|
<dc:Bounds x="660" y="380" width="140" height="50" />
|
|
</dmndi:DMNShape>
|
|
<dmndi:DMNShape id="s_in_firing" dmnElementRef="In_FiringReady">
|
|
<dc:Bounds x="820" y="380" width="140" height="50" />
|
|
</dmndi:DMNShape>
|
|
<dmndi:DMNShape id="s_in_bap" dmnElementRef="In_BapOnStation">
|
|
<dc:Bounds x="980" y="380" width="140" height="50" />
|
|
</dmndi:DMNShape>
|
|
<dmndi:DMNEdge id="e_ir_d1_1" dmnElementRef="ir_d1_1">
|
|
<di:waypoint x="190" y="10" /><di:waypoint x="420" y="80" />
|
|
</dmndi:DMNEdge>
|
|
<dmndi:DMNEdge id="e_ir_d2_1" dmnElementRef="ir_d2_1">
|
|
<di:waypoint x="400" y="160" /><di:waypoint x="290" y="240" />
|
|
</dmndi:DMNEdge>
|
|
<dmndi:DMNEdge id="e_ir_d3_1" dmnElementRef="ir_d3_1">
|
|
<di:waypoint x="480" y="160" /><di:waypoint x="610" y="240" />
|
|
</dmndi:DMNEdge>
|
|
</dmndi:DMNDiagram>
|
|
</dmndi:DMNDI>
|
|
|
|
</definitions>
|