Constant dmntk_examples::DMN_N_0019[][src]

pub const DMN_N_0019: &str = "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\r\n<definitions namespace=\"https://dmntk.io\"\r\n             name=\"non-compliant-test-0019\"\r\n             id=\"_7b7b45dd-41c3-4461-8157-68d7b90de6a8\"\r\n             xmlns=\"https://www.omg.org/spec/DMN/20191111/MODEL/\">\r\n    <itemDefinition id=\"_tFlight\" name=\"tFlight\">\r\n        <itemComponent id=\"_tFlight_Flight\" name=\"Flight Number\">\r\n            <typeRef>string</typeRef>\r\n        </itemComponent>\r\n        <itemComponent id=\"_tFlight_From\" name=\"From\">\r\n            <typeRef>string</typeRef>\r\n        </itemComponent>\r\n        <itemComponent id=\"_tFlight_To\" name=\"To\">\r\n            <typeRef>string</typeRef>\r\n        </itemComponent>\r\n        <itemComponent id=\"_tFlight_Dep\" name=\"Departure\">\r\n            <typeRef>dateTime</typeRef>\r\n        </itemComponent>\r\n        <itemComponent id=\"_tFlight_Arr\" name=\"Arrival\">\r\n            <typeRef>dateTime</typeRef>\r\n        </itemComponent>\r\n        <itemComponent id=\"_tFlight_Capacity\" name=\"Capacity\">\r\n            <typeRef>number</typeRef>\r\n        </itemComponent>\r\n        <itemComponent id=\"_tFlight_Status\" name=\"Status\">\r\n            <typeRef>string</typeRef>\r\n        </itemComponent>\r\n    </itemDefinition>\r\n    <itemDefinition id=\"_tFlightTable\" isCollection=\"true\" name=\"tFlightTable\">\r\n        <typeRef>tFlight</typeRef>\r\n    </itemDefinition>\r\n    <itemDefinition id=\"_tPassenger\" name=\"tPassenger\">\r\n        <itemComponent id=\"_tPassenger_Name\" name=\"Name\">\r\n            <typeRef>string</typeRef>\r\n        </itemComponent>\r\n        <itemComponent id=\"_tPassenger_Status\" name=\"Status\">\r\n            <typeRef>string</typeRef>\r\n        </itemComponent>\r\n        <itemComponent id=\"_tPassenger_Miles\" name=\"Miles\">\r\n            <typeRef>number</typeRef>\r\n        </itemComponent>\r\n        <itemComponent id=\"_tPassenger_Flight\" name=\"Flight Number\">\r\n            <typeRef>string</typeRef>\r\n        </itemComponent>\r\n    </itemDefinition>\r\n    <itemDefinition id=\"_tPassengerTable\" isCollection=\"true\" name=\"tPassengerTable\">\r\n        <typeRef>tPassenger</typeRef>\r\n    </itemDefinition>\r\n    <itemDefinition id=\"_tFlightNumberList\" isCollection=\"true\" name=\"tFlightNumberList\">\r\n        <typeRef>string</typeRef>\r\n    </itemDefinition>\r\n    <inputData id=\"i_Flight_List\" name=\"Flight List\">\r\n        <variable name=\"Flight List\" typeRef=\"tFlightTable\"/>\r\n    </inputData>\r\n    <inputData id=\"i_Passenger_List\" name=\"Passenger List\">\r\n        <variable name=\"Passenger List\" typeRef=\"tPassengerTable\"/>\r\n    </inputData>\r\n    <decision name=\"Prioritized Waiting List\" id=\"d_PrioritizedWaitingList\">\r\n        <variable name=\"Prioritized Waiting List\" typeRef=\"tPassengerTable\"/>\r\n        <informationRequirement>\r\n            <requiredInput href=\"#i_Passenger_List\"/>\r\n        </informationRequirement>\r\n        <informationRequirement>\r\n            <requiredInput href=\"#i_Flight_List\"/>\r\n        </informationRequirement>\r\n        <knowledgeRequirement>\r\n            <requiredKnowledge href=\"#b_PassengerPriority\"/>\r\n        </knowledgeRequirement>\r\n        <context>\r\n            <contextEntry>\r\n                <variable name=\"Cancelled Flights\" typeRef=\"tFlightNumberList\"/>\r\n                <literalExpression>\r\n                    <text>Flight List[ Status = \"cancelled\" ].Flight Number</text>\r\n                </literalExpression>\r\n            </contextEntry>\r\n            <contextEntry>\r\n                <variable name=\"Waiting List\" typeRef=\"tPassengerTable\"/>\r\n                <literalExpression>\r\n                    <text>Passenger List[ list contains( Cancelled Flights, Flight Number ) ]</text>\r\n                </literalExpression>\r\n            </contextEntry>\r\n            <contextEntry>\r\n                <literalExpression>\r\n                    <text>sort( Waiting List, passenger priority )</text>\r\n                </literalExpression>\r\n            </contextEntry>\r\n        </context>\r\n    </decision>\r\n    <decision name=\"Rebooked Passengers\" id=\"d_RebookedPassengers\">\r\n        <variable name=\"Rebooked Passengers\" typeRef=\"tPassengerTable\"/>\r\n        <informationRequirement>\r\n            <requiredDecision href=\"#d_PrioritizedWaitingList\"/>\r\n        </informationRequirement>\r\n        <informationRequirement>\r\n            <requiredInput href=\"#i_Flight_List\"/>\r\n        </informationRequirement>\r\n        <knowledgeRequirement>\r\n            <requiredKnowledge href=\"#b_ReassignNextPassenger\"/>\r\n        </knowledgeRequirement>\r\n        <invocation>\r\n            <literalExpression>\r\n                <text>reassign next passenger</text>\r\n            </literalExpression>\r\n            <binding>\r\n                <parameter name=\"Waiting List\"/>\r\n                <literalExpression>\r\n                    <text>Prioritized Waiting List</text>\r\n                </literalExpression>\r\n            </binding>\r\n            <binding>\r\n                <parameter name=\"Reassigned Passengers List\"/>\r\n                <literalExpression>\r\n                    <text>[]</text>\r\n                </literalExpression>\r\n            </binding>\r\n            <binding>\r\n                <parameter name=\"Flights\"/>\r\n                <literalExpression>\r\n                    <text>Flight List</text>\r\n                </literalExpression>\r\n            </binding>\r\n        </invocation>\r\n    </decision>\r\n    <businessKnowledgeModel id=\"b_PassengerPriority\" name=\"passenger priority\">\r\n        <variable name=\"passenger priority\" typeRef=\"boolean\"/>\r\n        <encapsulatedLogic>\r\n            <formalParameter name=\"Passenger1\" typeRef=\"tPassenger\"/>\r\n            <formalParameter name=\"Passenger2\" typeRef=\"tPassenger\"/>\r\n            <decisionTable hitPolicy=\"UNIQUE\">\r\n                <input id=\"b_Passenger_Priority_dt_i_P1_Status\" label=\"Passenger1.Status\">\r\n                    <inputExpression typeRef=\"string\">\r\n                        <text>Passenger1.Status</text>\r\n                    </inputExpression>\r\n                    <inputValues>\r\n                        <text>\"gold\", \"silver\", \"bronze\"</text>\r\n                    </inputValues>\r\n                </input>\r\n                <input id=\"b_Passenger_Priority_dt_i_P2_Status\" label=\"Passenger2.Status\">\r\n                    <inputExpression typeRef=\"string\">\r\n                        <text>Passenger2.Status</text>\r\n                    </inputExpression>\r\n                    <inputValues>\r\n                        <text>\"gold\", \"silver\", \"bronze\"</text>\r\n                    </inputValues>\r\n                </input>\r\n                <input id=\"b_Passenger_Priority_dt_i_P1_Miles\" label=\"Passenger1.Miles\">\r\n                    <inputExpression typeRef=\"number\">\r\n                        <text>Passenger1.Miles</text>\r\n                    </inputExpression>\r\n                </input>\r\n                <output id=\"b_Status_Priority_dt_o\" label=\"Passenger1 has priority\">\r\n                    <outputValues>\r\n                        <text>true, false</text>\r\n                    </outputValues>\r\n                    <defaultOutputEntry>\r\n                        <text>false</text>\r\n                    </defaultOutputEntry>\r\n                </output>\r\n                <rule id=\"b_Passenger_Priority_dt_r1\">\r\n                    <inputEntry id=\"b_Passenger_Priority_dt_r1_i1\">\r\n                        <text>\"gold\"</text>\r\n                    </inputEntry>\r\n                    <inputEntry id=\"b_Passenger_Priority_dt_r1_i2\">\r\n                        <text>\"gold\"</text>\r\n                    </inputEntry>\r\n                    <inputEntry id=\"b_Passenger_Priority_dt_r1_i3\">\r\n                        <text>&gt;= Passenger2.Miles</text>\r\n                    </inputEntry>\r\n                    <outputEntry id=\"b_Passenger_Priority_dt_r1_o1\">\r\n                        <text>true</text>\r\n                    </outputEntry>\r\n                </rule>\r\n                <rule id=\"b_Passenger_Priority_dt_r2\">\r\n                    <inputEntry id=\"b_Passenger_Priority_dt_r2_i1\">\r\n                        <text>\"gold\"</text>\r\n                    </inputEntry>\r\n                    <inputEntry id=\"b_Passenger_Priority_dt_r2_i2\">\r\n                        <text>\"silver\",\"bronze\"</text>\r\n                    </inputEntry>\r\n                    <inputEntry id=\"b_Passenger_Priority_dt_r2_i3\">\r\n                        <text>-</text>\r\n                    </inputEntry>\r\n                    <outputEntry id=\"b_Passenger_Priority_dt_r2_o1\">\r\n                        <text>true</text>\r\n                    </outputEntry>\r\n                </rule>\r\n                <rule id=\"b_Passenger_Priority_dt_r3\">\r\n                    <inputEntry id=\"b_Passenger_Priority_dt_r3_i1\">\r\n                        <text>\"silver\"</text>\r\n                    </inputEntry>\r\n                    <inputEntry id=\"b_Passenger_Priority_dt_r3_i2\">\r\n                        <text>\"silver\"</text>\r\n                    </inputEntry>\r\n                    <inputEntry id=\"b_Passenger_Priority_dt_r3_i3\">\r\n                        <text>&gt;= Passenger2.Miles</text>\r\n                    </inputEntry>\r\n                    <outputEntry id=\"b_Passenger_Priority_dt_r3_o1\">\r\n                        <text>true</text>\r\n                    </outputEntry>\r\n                </rule>\r\n                <rule id=\"b_Passenger_Priority_dt_r4\">\r\n                    <inputEntry id=\"b_Passenger_Priority_dt_r4_i1\">\r\n                        <text>\"silver\"</text>\r\n                    </inputEntry>\r\n                    <inputEntry id=\"b_Passenger_Priority_dt_r4_i2\">\r\n                        <text>\"bronze\"</text>\r\n                    </inputEntry>\r\n                    <inputEntry id=\"b_Passenger_Priority_dt_r4_i3\">\r\n                        <text>-</text>\r\n                    </inputEntry>\r\n                    <outputEntry id=\"b_Passenger_Priority_dt_r4_o1\">\r\n                        <text>true</text>\r\n                    </outputEntry>\r\n                </rule>\r\n                <rule id=\"b_Passenger_Priority_dt_r5\">\r\n                    <inputEntry id=\"b_Passenger_Priority_dt_r5_i1\">\r\n                        <text>\"bronze\"</text>\r\n                    </inputEntry>\r\n                    <inputEntry id=\"b_Passenger_Priority_dt_r5_i2\">\r\n                        <text>\"bronze\"</text>\r\n                    </inputEntry>\r\n                    <inputEntry id=\"b_Passenger_Priority_dt_r5_i3\">\r\n                        <text>&gt;= Passenger2.Miles</text>\r\n                    </inputEntry>\r\n                    <outputEntry id=\"b_Passenger_Priority_dt_r5_o1\">\r\n                        <text>true</text>\r\n                    </outputEntry>\r\n                </rule>\r\n            </decisionTable>\r\n        </encapsulatedLogic>\r\n    </businessKnowledgeModel>\r\n    <businessKnowledgeModel id=\"b_ReassignNextPassenger\" name=\"reassign next passenger\">\r\n        <variable name=\"reassign next passenger\" typeRef=\"tPassengerTable\"/>\r\n        <encapsulatedLogic>\r\n            <formalParameter name=\"Waiting List\" typeRef=\"tPassengerTable\"/>\r\n            <formalParameter name=\"Reassigned Passengers List\" typeRef=\"tPassengerTable\"/>\r\n            <formalParameter name=\"Flights\" typeRef=\"tFlightTable\"/>\r\n            <context>\r\n                <contextEntry>\r\n                    <variable name=\"Next Passenger\" typeRef=\"tPassenger\"/>\r\n                    <literalExpression>\r\n                        <text>Waiting List[1]</text>\r\n                    </literalExpression>\r\n                </contextEntry>\r\n                <contextEntry>\r\n                    <variable name=\"Original Flight\" typeRef=\"tFlight\"/>\r\n                    <literalExpression>\r\n                        <text>Flights[ Flight Number = Next Passenger.Flight Number ][1]</text>\r\n                    </literalExpression>\r\n                </contextEntry>\r\n                <contextEntry>\r\n                    <variable name=\"Best Alternate Flight\" typeRef=\"tFlight\"/>\r\n                    <literalExpression>\r\n                        <text>Flights[ From = Original Flight.From and\r\n                            To = Original Flight.To and\r\n                            Departure > Original Flight.Departure and\r\n                            Status = \"scheduled\" and\r\n                            has capacity( item, Reassigned Passengers List ) ][1]\r\n                        </text>\r\n                    </literalExpression>\r\n                </contextEntry>\r\n                <contextEntry>\r\n                    <variable name=\"Reassigned Passenger\" typeRef=\"tPassenger\"/>\r\n                    <context>\r\n                        <contextEntry>\r\n                            <variable name=\"Name\" typeRef=\"string\"/>\r\n                            <literalExpression>\r\n                                <text>Next Passenger.Name</text>\r\n                            </literalExpression>\r\n                        </contextEntry>\r\n                        <contextEntry>\r\n                            <variable name=\"Status\" typeRef=\"string\"/>\r\n                            <literalExpression>\r\n                                <text>Next Passenger.Status</text>\r\n                            </literalExpression>\r\n                        </contextEntry>\r\n                        <contextEntry>\r\n                            <variable name=\"Miles\" typeRef=\"number\"/>\r\n                            <literalExpression>\r\n                                <text>Next Passenger.Miles</text>\r\n                            </literalExpression>\r\n                        </contextEntry>\r\n                        <contextEntry>\r\n                            <variable name=\"Flight Number\" typeRef=\"string\"/>\r\n                            <literalExpression>\r\n                                <text>Best Alternate Flight.Flight Number</text>\r\n                            </literalExpression>\r\n                        </contextEntry>\r\n                    </context>\r\n                </contextEntry>\r\n                <contextEntry>\r\n                    <variable name=\"Remaining Waiting List\" typeRef=\"tPassengerTable\"/>\r\n                    <literalExpression>\r\n                        <text>remove( Waiting List, 1 )</text>\r\n                    </literalExpression>\r\n                </contextEntry>\r\n                <contextEntry>\r\n                    <variable name=\"Updated Reassigned Passengers List\" typeRef=\"tPassengerTable\"/>\r\n                    <literalExpression>\r\n                        <text>append( Reassigned Passengers List, Reassigned Passenger )</text>\r\n                    </literalExpression>\r\n                </contextEntry>\r\n                <contextEntry>\r\n                    <literalExpression>\r\n                        <text>if count( Remaining Waiting List ) > 0\r\n                            then\r\n                            reassign next passenger( Remaining Waiting List,\r\n                            Updated Reassigned Passengers List,\r\n                            Flights )\r\n                            else\r\n                            Updated Reassigned Passengers List\r\n                        </text>\r\n                    </literalExpression>\r\n                </contextEntry>\r\n            </context>\r\n        </encapsulatedLogic>\r\n        <knowledgeRequirement>\r\n            <requiredKnowledge href=\"#b_HasCapacity\"/>\r\n        </knowledgeRequirement>\r\n    </businessKnowledgeModel>\r\n    <businessKnowledgeModel id=\"b_HasCapacity\" name=\"has capacity\">\r\n        <variable name=\"has capacity\" typeRef=\"boolean\"/>\r\n        <encapsulatedLogic>\r\n            <formalParameter name=\"flight\" typeRef=\"tFlight\"/>\r\n            <formalParameter name=\"rebooked list\" typeRef=\"tPassengerTable\"/>\r\n            <literalExpression>\r\n                <text>flight.Capacity > count( rebooked list[ Flight Number = flight.Flight Number ] )</text>\r\n            </literalExpression>\r\n        </encapsulatedLogic>\r\n    </businessKnowledgeModel>\r\n</definitions>";