Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Semantic DMN: Formalizing Decision Models with Domain Knowledge

154 views

Published on

Presentation of the paper "Semantic DMN: Formalizing Decision Models with Domain Knowledge", joint work with Diego Calvanese, Marlon Dumas, and Fabrizio M. Maggi, at RuleML+RR: International Joint Conference on Rules and Reasoning.

Published in: Science
  • Be the first to comment

  • Be the first to like this

Semantic DMN: Formalizing Decision Models with Domain Knowledge

  1. 1. Semantic DMN Formalizing Decision Models with Domain Knowledge Diego Calvanese1, Marlon Dumas2, Fabrizio M. Maggi2, Marco Montali1 1Free University of Bozen-Bolzano, Italy 2University of Tartu, Estonia KRDB 1 montali@inf.unibz.it RuleML+RR 2017, London, UK Marco Montali Semantic DMN RuleML+RR 2017 1 / 25
  2. 2. The New Youth of Decision Models Decision Model and Notation (DMN) standard by OMG: • Supports elicitation and clean representation of decision models. • Decision: set of business rules for a single decision with fixed inputs/outputs. Captured in a table. • Decision Requirements Diagram: composition of multiple decisions. Increasingly being adopted in the industry. • Many tools for modeling, checking, refactoring, applying DMN models. Marco Montali Semantic DMN RuleML+RR 2017 2 / 25
  3. 3. Success Factor #1: Timeliness Organisations are increasingly process-oriented. • DMN encourages separation of concerns between the process logic and the decision logic. • Clarity, modularity, reusability. Marco Montali Semantic DMN RuleML+RR 2017 3 / 25
  4. 4. Success Factor #1: Timeliness Organisations are increasingly process-oriented. • DMN encourages separation of concerns between the process logic and the decision logic. • Clarity, modularity, reusability. From BPMN. . . Marco Montali Semantic DMN RuleML+RR 2017 3 / 25
  5. 5. Success Factor #1: Timeliness Organisations are increasingly process-oriented. • DMN encourages separation of concerns between the process logic and the decision logic. • Clarity, modularity, reusability. . . . to BPMN+DMN Marco Montali Semantic DMN RuleML+RR 2017 3 / 25
  6. 6. Success Factor #2: Understandability hereby call a facet. Each row has an identifier, one expression for each input column (a.k.a. the input entries), and one specific value for each output column (the output entries). For example, Table 1 shows a DMN table with two input columns, one output column and four rules. Loan Grade U C Annual Loan Grade Income Size 0 0 VG,G,F,P A [0..1000] [0..1000] VG B [250..750] [4000..5000] G C [500..1500] [500..3000] F D [2000..2500] [0..2000] P Table name Hit indicator Completeness indicator Input attributes Facet Output attribute Rule Priority indicator Input entries Output entry Table 1: Sample decision table with its constitutive elements Given an input configuration consisting of a vector of values (one entry per column), if every input entry of a row holds true for this input vector, then the 3 Rule conditions specified using the Friendly Enough Expression Language, coming in two flavours: • S-FEEL - simple and graphical. • (full) FEEL - powerful and textual. We focus on S-FEEL. Marco Montali Semantic DMN RuleML+RR 2017 4 / 25
  7. 7. Research Questions Formal semantics: • What is the semantics of DMN Decision Tables? • How to efficiently check the correctness of tables and their indicators? −→ [ ,BPM2016] Marco Montali Semantic DMN RuleML+RR 2017 5 / 25
  8. 8. Research Questions Formal semantics: • What is the semantics of DMN Decision Tables? • How to efficiently check the correctness of tables and their indicators? −→ [ ,BPM2016] Model integration: • How to assess the overall correctness of processes+decision models? −→ [Hewelt and Weske,BPMForum2017] Marco Montali Semantic DMN RuleML+RR 2017 5 / 25
  9. 9. Research Questions Formal semantics: • What is the semantics of DMN Decision Tables? • How to efficiently check the correctness of tables and their indicators? −→ [ ,BPM2016] Model integration: • How to assess the overall correctness of processes+decision models? −→ [Hewelt and Weske,BPMForum2017] • How to integrate decision models and background knowledge? DMN works under the assumption of complete information! • How to formalise the semantics of such an integrated model? • How to reassess correctness in this richer setting? −→ This work! Marco Montali Semantic DMN RuleML+RR 2017 5 / 25
  10. 10. A Concrete Example Inspired by the Ship and Port Facility Security Code: • Ship clearance in the Netherlands. • March 2016 challenge at dmcommunity.org. Marco Montali Semantic DMN RuleML+RR 2017 6 / 25
  11. 11. Knowledge of Ships There are several types of ships, characterised by: • length (in m); • draft size (in m); • capacity (in TEU). Marco Montali Semantic DMN RuleML+RR 2017 7 / 25
  12. 12. Knowledge of Ships There are several types of ships, characterised by: • length (in m); • draft size (in m); • capacity (in TEU). Ship Type Short Length (m) Draft (m) Capacity (TEU) Converted Cargo Vessel CCV 135 0 – 9 500 Converted Tanker CT 200 0 – 9 800 Cellular Containership CC 215 10 1000 – 2500 Small Panamax Class SPC 250 11 – 12 3000 Large Panamax Class LPC 290 11 – 12 4000 Post Panamax PP 275 – 305 11 – 13 4000 – 5000 Post Panamax Plus PPP 335 13 – 14 5000 – 8000 New Panamax NP 397 15.5 11 000 – 14 500 Marco Montali Semantic DMN RuleML+RR 2017 7 / 25
  13. 13. Knowledge of Ships There are several types of ships, characterised by: • length (in m); • draft size (in m); • capacity (in TEU). Ship Type Short Length (m) Draft (m) Capacity (TEU) Converted Cargo Vessel CCV 135 0 – 9 500 Converted Tanker CT 200 0 – 9 800 Cellular Containership CC 215 10 1000 – 2500 Small Panamax Class SPC 250 11 – 12 3000 Large Panamax Class LPC 290 11 – 12 4000 Post Panamax PP 275 – 305 11 – 13 4000 – 5000 Post Panamax Plus PPP 335 13 – 14 5000 – 8000 New Panamax NP 397 15.5 11 000 – 14 500 Warning! This is not a decision table. This is a set of constraints relating the ship types with corresponding possible dimensions. Marco Montali Semantic DMN RuleML+RR 2017 7 / 25
  14. 14. Clearance Rules A vessel may enter a port if: • it is equipped with a valid certificate of registry; • it meets the safety requirements. Marco Montali Semantic DMN RuleML+RR 2017 8 / 25
  15. 15. Clearance Rules A vessel may enter a port if: • it is equipped with a valid certificate of registry; • it meets the safety requirements. Valid certificate of registry Certificate expiration date > current date. Safety Requirements Based on ship characteristics and the amount of residual cargo: • small ships (with length ≤ 260 m and draft ≤ 10 m) may enter only if their capacity is ≤ 1000 TEU. • Ships with a small length (≤ 260 m), medium draft > 10 and ≤ 12 m, and capacity ≤ 4000 TEU, may enter only if cargo residuals have ≤ 0.75 mg dry weight per cm2 . • Medium-sized ships (with length > 260 m and < 320 m, and draft > 10 m and ≤ 13 m), and with a cargo capacity < 6000 TEU, may enter only if their residuals have ≤ 0.5 mg dry weight per cm2 . • Big ships with length between 320 m and 400 m, draft > 13 m, and capacity > 4000 TEU, may enter only if their carried residuals have ≤ 0.25 mg dry weight per cm2 . Marco Montali Semantic DMN RuleML+RR 2017 8 / 25
  16. 16. Clearance Rules in DMNTable 2: Decision table for determining vessel clearance in Dutch ports; symbol today is a shortcut for the milliseconds representing time 00:00:00 of the current date. Vessel Clearance C U Cer. Exp. Length Draft Capacity Cargo Enter (date) (m) (m) (TEU) (mg/cm2 ) 0 0 0 0 0 Y,N 1  today N 2 > today <260 <10 <1000 Y 3 > today <260 <10 1000 N 4 > today <260 [10,12] <4000 0.75 Y 5 > today <260 [10,12] <4000 >0.75 N 6 > today [260,320) (10,13] <6000 0.5 Y 7 > today [260,320) (10,13] <6000 >0.5 N 8 > today [320,400) 13 >4000 0.25 Y 9 > today [320,400) 13 >4000 >0.25 N • “ ” is an S-FEEL condition representing any value (i.e., it evaluates to true for every object in D); • given a constant v, expressions “v” and “not(v)” are S-FEEL conditions respectively denoting that the value shall (not) match with v. • if D is a numerical datatype, given two numbers v1, v2 2 D, the interval expres- Marco Montali Semantic DMN RuleML+RR 2017 9 / 25
  17. 17. Clearance Rules in DMNTable 2: Decision table for determining vessel clearance in Dutch ports; symbol today is a shortcut for the milliseconds representing time 00:00:00 of the current date. Vessel Clearance C U Cer. Exp. Length Draft Capacity Cargo Enter (date) (m) (m) (TEU) (mg/cm2 ) 0 0 0 0 0 Y,N 1  today N 2 > today <260 <10 <1000 Y 3 > today <260 <10 1000 N 4 > today <260 [10,12] <4000 0.75 Y 5 > today <260 [10,12] <4000 >0.75 N 6 > today [260,320) (10,13] <6000 0.5 Y 7 > today [260,320) (10,13] <6000 >0.5 N 8 > today [320,400) 13 >4000 0.25 Y 9 > today [320,400) 13 >4000 >0.25 N • “ ” is an S-FEEL condition representing any value (i.e., it evaluates to true for every object in D); • given a constant v, expressions “v” and “not(v)” are S-FEEL conditions respectively denoting that the value shall (not) match with v. • if D is a numerical datatype, given two numbers v1, v2 2 D, the interval expres- Key Questions • Are the table indicators correct? • Do we need complete information about ships to apply the table? Is it enough to know certificate expiration, ship type, cargo residuals? Marco Montali Semantic DMN RuleML+RR 2017 9 / 25
  18. 18. Clearance Rules in DMNTable 2: Decision table for determining vessel clearance in Dutch ports; symbol today is a shortcut for the milliseconds representing time 00:00:00 of the current date. Vessel Clearance C U Cer. Exp. Length Draft Capacity Cargo Enter (date) (m) (m) (TEU) (mg/cm2 ) 0 0 0 0 0 Y,N 1  today N 2 > today <260 <10 <1000 Y 3 > today <260 <10 1000 N 4 > today <260 [10,12] <4000 0.75 Y 5 > today <260 [10,12] <4000 >0.75 N 6 > today [260,320) (10,13] <6000 0.5 Y 7 > today [260,320) (10,13] <6000 >0.5 N 8 > today [320,400) 13 >4000 0.25 Y 9 > today [320,400) 13 >4000 >0.25 N • “ ” is an S-FEEL condition representing any value (i.e., it evaluates to true for every object in D); • given a constant v, expressions “v” and “not(v)” are S-FEEL conditions respectively denoting that the value shall (not) match with v. • if D is a numerical datatype, given two numbers v1, v2 2 D, the interval expres- sions “[v1, v2]”, “[v1, v2)”, “(v1, v2]”, and “(v1, v2)” are S-FEEL conditions (inter- Correctness of table indicators • Unique hit: yes! • Completeness: no if table considered in isolation; yes if understood in the context of background knowledge about ships. Marco Montali Semantic DMN RuleML+RR 2017 9 / 25
  19. 19. Clearance Rules in DMNTable 2: Decision table for determining vessel clearance in Dutch ports; symbol today is a shortcut for the milliseconds representing time 00:00:00 of the current date. Vessel Clearance C U Cer. Exp. Length Draft Capacity Cargo Enter (date) (m) (m) (TEU) (mg/cm2 ) 0 0 0 0 0 Y,N 1  today N 2 > today <260 <10 <1000 Y 3 > today <260 <10 1000 N 4 > today <260 [10,12] <4000 0.75 Y 5 > today <260 [10,12] <4000 >0.75 N 6 > today [260,320) (10,13] <6000 0.5 Y 7 > today [260,320) (10,13] <6000 >0.5 N 8 > today [320,400) 13 >4000 0.25 Y 9 > today [320,400) 13 >4000 >0.25 N • “ ” is an S-FEEL condition representing any value (i.e., it evaluates to true for every object in D); • given a constant v, expressions “v” and “not(v)” are S-FEEL conditions respectively denoting that the value shall (not) match with v. • if D is a numerical datatype, given two numbers v1, v2 2 D, the interval expres- sions “[v1, v2]”, “[v1, v2)”, “(v1, v2]”, and “(v1, v2)” are S-FEEL conditions (inter- Table application from certificate expiration, ship type, cargo residuals • From ship type, one can infer partial information about ship characteristics, using background knowledge. • Combined with certificate expiration and cargo residuals, this is enough to unambiguously apply the decision table! Marco Montali Semantic DMN RuleML+RR 2017 9 / 25
  20. 20. Sources of Decision Knowledge • DMN Decisions. Defined by the standard. • Knowledge Base. Multi-sorted FOL theory FOL(D): ◦ Sorts D: correspond to the S-FEEL data types (strings, numbers, with their comparison predicates). ◦ Concept: unary predicate interpreted over abstract object domain ∆. ◦ Role: Binary predicate relating pairs of objects from ∆. ◦ Feature: Binary predicate relating objects from ∆ to data values from a selected data type in D. Marco Montali Semantic DMN RuleML+RR 2017 10 / 25
  21. 21. Sources of Decision Knowledge • DMN Decisions. Defined by the standard. • Knowledge Base. Multi-sorted FOL theory FOL(D): ◦ Sorts D: correspond to the S-FEEL data types (strings, numbers, with their comparison predicates). ◦ Concept: unary predicate interpreted over abstract object domain ∆. ◦ Role: Binary predicate relating pairs of objects from ∆. ◦ Feature: Binary predicate relating objects from ∆ to data values from a selected data type in D. Example Ship Type Short Length (m) Draft (m) Capacity (TEU) . . . CCV 135 0 – 9 500 ∀s.CCV(s) → Ship(s) ∧ ∀l.(length(s, l) → l = 135) ∧ ∀d.(draft(s, d) → d ≥ 0 ∧ d ≤ 9) ∧ ∀c.(capacity(s, c) → c = 500) Marco Montali Semantic DMN RuleML+RR 2017 10 / 25
  22. 22. Combining Decisions and Background Knowledge Marco Montali Semantic DMN RuleML+RR 2017 11 / 25
  23. 23. Combining Decisions and Background Knowledge Marco Montali Semantic DMN RuleML+RR 2017 11 / 25
  24. 24. Combining Decisions and Background Knowledge Marco Montali Semantic DMN RuleML+RR 2017 11 / 25
  25. 25. Combining Decisions and Background Knowledge Marco Montali Semantic DMN RuleML+RR 2017 11 / 25
  26. 26. Decision Knowledge Bases Definition (DKB) A decision knowledge base over datatypes D (D-DKB, or DKB for short) is a tuple Σ, T , M, C, A , where: • T is a FOL(D) IKB with signature Σ. • M is a DMN decision that satisfies the following two typing conditions: (output uniqueness) M.O ∩ Σ = ∅; (input type compatibility) for every binary predicate P ∈ Σ whose name appears in M.I, their types are compatible, i.e., M.AType(P) = SigP (2). • C ∈ ΣC is a bridge concept: a concept from Σ that links T with M. • A is an ABox over the extended signature Σ ∪ M.I. Example The combination of the knowledge base of ships with the vessel clearance DMN decision, using Ship as bridge concept. Marco Montali Semantic DMN RuleML+RR 2017 12 / 25
  27. 27. Formalising DKBs Encode the DMN decision in FOL(D): • Using the bridge concept as reference concept. • Then simply enriching the original KB with the so-obtained additional axioms. Marco Montali Semantic DMN RuleML+RR 2017 13 / 25
  28. 28. Formalising DKBs Encode the DMN decision in FOL(D): • Using the bridge concept as reference concept. • Then simply enriching the original KB with the so-obtained additional axioms. Marco Montali Semantic DMN RuleML+RR 2017 13 / 25
  29. 29. Encoding of Attributes (1) Signature extended by introducing: • A feature for each input attribute of the decision that is not already used in the KB. • A feature for each combination of output attribute-rule: output feature + its provenance. Example 8 D. Calvanese, M. Dumas, F.M. Maggi, M. Montali Table 2: Decision table for determining vessel clearance in Dutch ports; symbol today is a shortcut for the milliseconds representing time 00:00:00 of the current date. Vessel Clearance C U Cer. Exp. Length Draft Capacity Cargo Enter (date) (m) (m) (TEU) (mg/cm2 ) 0 0 0 0 0 Y,N 1  today N 2 > today <260 <10 <1000 Y 3 > today <260 <10 1000 N 4 > today <260 [10,12] <4000 0.75 Y 5 > today <260 [10,12] <4000 >0.75 N 6 > today [260,320) (10,13] <6000 0.5 Y 7 > today [260,320) (10,13] <6000 >0.5 N 8 > today [320,400) 13 >4000 0.25 Y 9 > today [320,400) 13 >4000 >0.25 N • 2 new features for CerExp and Cargo; • 9 new features for Enter, i.e., Enteri for rule i (i ∈ {1, . . . , 9}). Marco Montali Semantic DMN RuleML+RR 2017 14 / 25
  30. 30. Encoding of Attributes (2) For each input/output feature, add 2 axioms: • Typing axiom: the domain of the feature is the bridge concept. • Functionality axiom: no two attributes of the same kind. ◦ For input features: non-ambiguous application of rules. ◦ For output features: simply asserts that an output cell contains a single value. Example 8 D. Calvanese, M. Dumas, F.M. Maggi, M. Montali Table 2: Decision table for determining vessel clearance in Dutch ports; symbol today is a shortcut for the milliseconds representing time 00:00:00 of the current date. Vessel Clearance C U Cer. Exp. Length Draft Capacity Cargo Enter (date) (m) (m) (TEU) (mg/cm2 ) 0 0 0 0 0 Y,N 1  today N 2 > today <260 <10 <1000 Y 3 > today <260 <10 1000 N 4 > today <260 [10,12] <4000 0.75 Y 5 > today <260 [10,12] <4000 >0.75 N 6 > today [260,320) (10,13] <6000 0.5 Y 7 > today [260,320) (10,13] <6000 >0.5 N 8 > today [320,400) 13 >4000 0.25 Y For the Length attribute: ∀x, y.length(x, y) → Ship(x). ∀x, y, z.length(x, y)∧length(x, z) → y = z. Marco Montali Semantic DMN RuleML+RR 2017 15 / 25
  31. 31. Encoding Attributes Extended by introducing: • A feature for each input attribute of the decision that is not already used in the KB. • A feature for each combination of output attribute-rule: output feature + its provenance. Example 8 D. Calvanese, M. Dumas, F.M. Maggi, M. Montali Table 2: Decision table for determining vessel clearance in Dutch ports; symbol today is a shortcut for the milliseconds representing time 00:00:00 of the current date. Vessel Clearance C U Cer. Exp. Length Draft Capacity Cargo Enter (date) (m) (m) (TEU) (mg/cm2 ) 0 0 0 0 0 Y,N 1  today N 2 > today <260 <10 <1000 Y 3 > today <260 <10 1000 N 4 > today <260 [10,12] <4000 0.75 Y 5 > today <260 [10,12] <4000 >0.75 N 6 > today [260,320) (10,13] <6000 0.5 Y 7 > today [260,320) (10,13] <6000 >0.5 N 8 > today [320,400) 13 >4000 0.25 Y 9 > today [320,400) 13 >4000 >0.25 N • 2 new features for CerExp and Cargo; • 9 new features for Enter: Enteri for rule i (i ∈ {1, . . . , 9}). Marco Montali Semantic DMN RuleML+RR 2017 16 / 25
  32. 32. Encoding of S-FEEL Conditions Quite straightforward: an S-FEEL condition is nothing else than a unary FOL(D) formula. S-FEEL Translation Function Given an S-FEEL condition Q, function τx(Q) builds a unary FOL(D) formula that encodes the application of Q to x. τx (Q)    true if Q = “−” x v if Q = “not(v)” x = v if Q = “v” x ≈ v if Q = “≈ v” and ≈ ∈ {<, >, ≤, ≥} x > v1 ∧ x < v2 if Q = “(v1..v2)” . . . (similarly for the other types of intervals) τx(Q1) ∨ τx(Q2) if Q = “Q1,Q2” Marco Montali Semantic DMN RuleML+RR 2017 17 / 25
  33. 33. Encoding of Attribute Facets Each attribute facet becomes an axiom: • The facet constrains the range of the corresponding feature. • The facet is an S-FEEL condition: just translate it to get the constraint. Example 8 D. Calvanese, M. Dumas, F.M. Maggi, M. Montali Table 2: Decision table for determining vessel clearance in Dutch ports; symbol today is a shortcut for the milliseconds representing time 00:00:00 of the current date. Vessel Clearance C U Cer. Exp. Length Draft Capacity Cargo Enter (date) (m) (m) (TEU) (mg/cm2 ) 0 0 0 0 0 Y,N 1  today N 2 > today <260 <10 <1000 Y 3 > today <260 <10 1000 N 4 > today <260 [10,12] <4000 0.75 Y 5 > today <260 [10,12] <4000 >0.75 N 6 > today [260,320) (10,13] <6000 0.5 Y 7 > today [260,320) (10,13] <6000 >0.5 N 8 > today [320,400) 13 >4000 0.25 Y 9 > today [320,400) 13 >4000 >0.25 N For Length: ∀x, y.length(x, y) → y ≥ 0. Marco Montali Semantic DMN RuleML+RR 2017 18 / 25
  34. 34. Encoding of Rules DMN rule as an implication: whenever an instance of the bridge concept satisfies all input conditions, then it must be related to the output values. Marco Montali Semantic DMN RuleML+RR 2017 19 / 25
  35. 35. Encoding of Rules DMN rule as an implication: whenever an instance of the bridge concept satisfies all input conditions, then it must be related to the output values. Marco Montali Semantic DMN RuleML+RR 2017 19 / 25
  36. 36. Encoding of Rules DMN rule as an implication: whenever an instance of the bridge concept satisfies all input conditions, then it must be related to the output values. Marco Montali Semantic DMN RuleML+RR 2017 19 / 25
  37. 37. Encoding of Rules: ExampleTable 2: Decision table for determining vessel clearance in Dutch ports; symbol today is a shortcut for the milliseconds representing time 00:00:00 of the current date. Vessel Clearance C U Cer. Exp. Length Draft Capacity Cargo Enter (date) (m) (m) (TEU) (mg/cm2 ) 0 0 0 0 0 Y,N 1  today N 2 > today <260 <10 <1000 Y 3 > today <260 <10 1000 N 4 > today <260 [10,12] <4000 0.75 Y 5 > today <260 [10,12] <4000 >0.75 N 6 > today [260,320) (10,13] <6000 0.5 Y 7 > today [260,320) (10,13] <6000 >0.5 N 8 > today [320,400) 13 >4000 0.25 Y 9 > today [320,400) 13 >4000 >0.25 N • “ ” is an S-FEEL condition representing any value (i.e., it evaluates to true for every object in D); • given a constant v, expressions “v” and “not(v)” are S-FEEL conditions respectively denoting that the value shall (not) match with v. • if D is a numerical datatype, given two numbers v1, v2 2 D, the interval expres- Encoding of rule #2: ∀x,e, l, d, c. exp(x, e) ∧ e > today ∧ length(x, l) ∧ l < 260 ∧ draft(x, d) ∧ d < 10 ∧ cap(x, c) ∧ c < 1000 → ∃o.enter2(x, o) ∧ o = Y. Marco Montali Semantic DMN RuleML+RR 2017 20 / 25
  38. 38. Fundamental Reasoning Tasks for DKBs I/O Relationship Input: • DKB X, • object c ∈ ∆ of type C, • output attribute Po ∈ M.O, • value v ∈ M.AType(Po). Question: Is it the case that X assigns output v? Table Completeness (C indicator) Input: IDKB X (intensional, no data). Question: Is it the case that, for every possible input, at least one rule of the decision in X is guaranteed to trigger? Correctness of Unique Hit (U indicator) Input: IDKB X (intensional, no data). Question: Is it the case that rules in the decision of X do not overlap? Marco Montali Semantic DMN RuleML+RR 2017 21 / 25
  39. 39. Reasoning on DKBs Fact All such reasoning tasks can be encoded as logical implication checks in FOL(D). This is of no help. Marco Montali Semantic DMN RuleML+RR 2017 22 / 25
  40. 40. Reasoning on DKBs Fact All such reasoning tasks can be encoded as logical implication checks in FOL(D). This is of no help. Idea Investigate suitable fragments of FOL(D) that: • Are expressive enough to encode DMN decisions. • Have decidable reasoning (understanding its complexity). Description logics with data types are the natural candidate for this! Marco Montali Semantic DMN RuleML+RR 2017 22 / 25
  41. 41. Reasoning on DKBs Fact All such reasoning tasks can be encoded as logical implication checks in FOL(D). This is of no help. Idea Investigate suitable fragments of FOL(D) that: • Are expressive enough to encode DMN decisions. • Have decidable reasoning (understanding its complexity). Description logics with data types are the natural candidate for this! We investigate in particular the usage of ALC(D): • Well-known ALC extended with data types (not interacting with each other). • Reasoning (e.g., subsumption): ExpTime-complete. • Goes well with S-FEEL! Marco Montali Semantic DMN RuleML+RR 2017 22 / 25
  42. 42. Encoding DMN Decisions into ALC(D) We reconstruct the encoding of DMN decisions into FOL(D), using ALC(D). 8 D. Calvanese, M. Dumas, F.M. Maggi, M. Montali Table 2: Decision table for determining vessel clearance in Dutch ports; symbol today is a shortcut for the milliseconds representing time 00:00:00 of the current date. Vessel Clearance C U Cer. Exp. Length Draft Capacity Cargo Enter (date) (m) (m) (TEU) (mg/cm2 ) 0 0 0 0 0 Y,N 1  today N 2 > today <260 <10 <1000 Y 3 > today <260 <10 1000 N 4 > today <260 [10,12] <4000 0.75 Y 5 > today <260 [10,12] <4000 >0.75 N 6 > today [260,320) (10,13] <6000 0.5 Y 7 > today [260,320) (10,13] <6000 >0.5 N 8 > today [320,400) 13 >4000 0.25 Y 9 > today [320,400) 13 >4000 >0.25 N • “ ” is an S-FEEL condition representing any value (i.e., it evaluates to true for every object in D); • given a constant v, expressions “v” and “not(v)” are S-FEEL conditions respectively denoting that the value shall (not) match with v. Encoding of rule #2: ∀x,e, l, d, c. exp(x, e) ∧ e > today ∧ length(x, l) ∧ l < 260 ∧ draft(x, d) ∧ d < 10 ∧ cap(x, c) ∧ c < 1000 → ∃o.enter2(x, o) ∧ o = Y. Encoding of rule #2 in ALC(D): ∀exp.real[>today] ∀length.real[<260] ∀draft.real[<10] ∀cap.real[<1000] ∃enter2 ∀enter2.stri Marco Montali Semantic DMN RuleML+RR 2017 23 / 25
  43. 43. Main Results Consider now an ALC(D) DKB, where the background knowledge is expressed in ALC(D) (e.g., ship types). Theorem The translation into FOL(D) is logically equivalent to the translation into ALC(D). Marco Montali Semantic DMN RuleML+RR 2017 24 / 25
  44. 44. Main Results Consider now an ALC(D) DKB, where the background knowledge is expressed in ALC(D) (e.g., ship types). Theorem The translation into FOL(D) is logically equivalent to the translation into ALC(D). Theorem The I/O relationship, table completeness, and correctness of unique hit problems can all be decided in ExpTime for ALC(D) DKBs. Proof. The proof is based on a reduction from the three decision problems to a polynomial number of instance or subsumption checks w.r.t. an ALC(D) KB, which can be decided in ExpTime. Marco Montali Semantic DMN RuleML+RR 2017 24 / 25
  45. 45. Conclusions • Importance of combining DMN decisions with other models. • In this work: combination with background knowledge, reasoning under incomplete information. Many future avenues: • Combination with (data-aware) process models, reconstructing verification in this richer setting. • Lightweight DKBs: DMN Decisions can be expressed in the logic DL-Lite (HN) bool (D) (conjecture: reasoning in CoNP). • Closed-open models. • Identification of minimal set of inputs you need to know for non-ambiguously applying the decision logic (interpolation, epistemic interpretation, . . . ). Marco Montali Semantic DMN RuleML+RR 2017 25 / 25

×