<!DOCTYPE article PUBLIC "-//NLM//DTD JATS (Z39.96) Journal Archiving and Interchange DTD v1.0 20120330//EN" "JATS-archivearticle1.dtd">
<article xmlns:xlink="http://www.w3.org/1999/xlink">
  <front>
    <journal-meta>
      <issn pub-type="ppub">1613-0073</issn>
    </journal-meta>
    <article-meta>
      <title-group>
        <article-title>Towards a Policy Language for Managing Inconsistency in Multi-Context Systems?</article-title>
      </title-group>
      <contrib-group>
        <contrib contrib-type="author">
          <string-name>Thomas Eiter</string-name>
          <email>eiter@kr.tuwien.ac.at</email>
          <xref ref-type="aff" rid="aff1">1</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Michael Fink</string-name>
          <email>fink@kr.tuwien.ac.at</email>
          <xref ref-type="aff" rid="aff1">1</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Giovambattista Ianni</string-name>
          <email>ianni@mat.unical.it</email>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Peter Schu¨ ller</string-name>
          <xref ref-type="aff" rid="aff1">1</xref>
        </contrib>
        <aff id="aff0">
          <label>0</label>
          <institution>Dipartimento di Matematica, Cubo 30B, Universita` della Calabria 87036 Rende (CS)</institution>
          ,
          <country country="IT">Italy</country>
        </aff>
        <aff id="aff1">
          <label>1</label>
          <institution>Institut fu ̈ r Informationssysteme, Technische Universita ̈t Wien Favoritenstraße 9-11</institution>
          ,
          <addr-line>A-1040 Vienna</addr-line>
          ,
          <country country="AT">Austria</country>
        </aff>
      </contrib-group>
      <pub-date>
        <year>2011</year>
      </pub-date>
      <fpage>23</fpage>
      <lpage>35</lpage>
      <abstract>
        <p>Multi-context systems are a formalism for interlinking knowledge based system (contexts) which interact via (possibly nonmonotonic) bridge rules. Such interlinking provides ample opportunity for unexpected inconsistencies. These are undesired, and come in different categories: some are serious and must be inspected by a human operator, while some should simply be repaired automatically. However, no one-fits-all solution exists, as these categories depend on the application scenario. To tackle inconsistencies in a general way, we thus propose a declarative policy language for inconsistency management in multicontext systems. We define syntax and semantics, give methodologies for applying the language in real world applications, and discuss a possible implementation.</p>
      </abstract>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>Introduction</title>
      <p>
        Powerful knowledge based applications can be built by interlinking smaller existing
knowledge based systems. Multi-context systems (MCSs) [
        <xref ref-type="bibr" rid="ref5">5</xref>
        ], based on [
        <xref ref-type="bibr" rid="ref18 ref6">18, 6</xref>
        ], are a
generic formalism that captures heterogeneous knowledge bases (contexts) which are
interlinked using (possibly nonmonotonic) bridge rules.
      </p>
      <p>
        The advantage of building a system from smaller parts however poses the challenge
of unexpected inconsistencies due to unintended interaction of system parts. Such
inconsistencies are undesired, as (under common principles) inference becomes trivial.
Explaining reasons for inconsistency in MCSs has been investigated in [
        <xref ref-type="bibr" rid="ref13">13</xref>
        ]: several
independent inconsistencies can exist in a MCS, and each inconsistency usually comes
with more than one possibility to repair it.
      </p>
      <p>For example, imagine a hospital information system which links several databases
and suggests treatments for patients. A simple inconsistency which can be automatically
ignored would be if a patient enters her birth date correctly at the front desk, but swaps
two digits filling in a form at the X-ray department. An entirely different story is, if we
have a patient who needs treatment, but all options conflict with some allergy of the
patient. Here attempting an automatic repair may not be a viable option: a doctor should
inspect the situation and make a decision.
? This research has been supported by the Vienna Science and Technology Fund (WWTF) project</p>
      <p>ICT08-020.</p>
      <p>
        In the light of such scenarios, tackling inconsistency requires individual strategies
and targeted (re)actions, depending on the type of inconsistency and on the application.
We thus propose IMPL, a declarative policy language providing a means to specify
inconsistency management strategies for MCSs. Briefly, our contributions are as follows.
• We define the syntax of IMPL, inspired by answer set programs (ASPs) [
        <xref ref-type="bibr" rid="ref17">17</xref>
        ]. In
particular, we specify input for policy reasoning, in terms of reserved predicates.
These predicates encode inconsistency analysis results in terms of [
        <xref ref-type="bibr" rid="ref13">13</xref>
        ]. Furthermore,
we specify action predicates that can be derived in rules. Actions provide a means to
counteract inconsistency by modifying the MCS, and may involve interaction with a
human operator.
• We define IMPL semantics in terms of a three-step process which calculates models
of a policy, then determines effects of actions which are present in such model (this
possibly involves user interaction), and finally applies these effects to the MCS.
• We provide methodologies for integrating IMPL into application scenarios, and discuss
useful language extensions and a potential realization using the acthex formalism [
        <xref ref-type="bibr" rid="ref2">2</xref>
        ].
2
      </p>
    </sec>
    <sec id="sec-2">
      <title>Preliminaries</title>
      <p>
        Multi-context systems (MCSs). A heterogeneous nonmonotonic MCS [
        <xref ref-type="bibr" rid="ref5">5</xref>
        ] consists of
contexts, each composed of a knowledge base with an underlying logic, and a set of
bridge rules which control the information flow between contexts.
      </p>
      <p>A logic L = (KBL, BSL, ACCL) is an abstraction which captures many monotonic
and nonmonotonic logics, e.g., classical logic, description logics, or default logics. It
consists of the following components, the first two intuitively define the logic’s syntax,
the third its semantics:
• KBL is the set of well-formed knowledge bases of L. We assume each element of</p>
      <p>KBL is a set of “formulas”.
• BSL is the set of possible belief sets, where a belief set is a set of “beliefs”.
• ACCL : KBL → 2BSL assigns to each KB a set of acceptable belief sets.
Since contexts may have different logics, this allows to model heterogeneous systems.
Example 1. For propositional logic Lprop under the closed world assumption over
signature Σ, KB is the set of propositional formulas over Σ; BS is the set of deductively
closed sets of propositional Σ-literals; and ACC(kb) returns for each kb a singleton set,
containing the set of literal consequences of kb under the closed world assumption.</p>
      <p>A bridge rule models information flow between contexts: it can add information to a
context, depending on the belief sets accepted at other contexts. Let L = (L1, . . . , Ln)
be a tuple of logics. An Lk-bridge rule r over L is of the form
(k : s) ← (c1 : p1), . . . , (cj : pj ), not (cj+1 : pj+1), . . . , not (cm : pm).
(1)
where k and ci are context identifiers, i.e., integers in the range 1, . . . , n, pi is an element
of some belief set of Lci , and s is a formula of Lk. We denote by hb (r) the formula s in
the head of r.</p>
      <p>
        A multi-context system M = (C1, . . . , Cn) is a collection of contexts Ci =
(Li, kbi, bri), 1 ≤ i ≤ n, where Li = (KBi, BSi, ACCi) is a logic, kbi ∈ KBi
tu
a knowledge base, and br i is a set of Li-bridge rules over (L1, . . . , Ln). By IN i =
{hb (r) | r ∈ bri} we denote the set of possible inputs of context Ci added by bridge
rules. For each H ⊆ IN i it is required that kbi ∪ H ∈ KBLi . Similar to IN i, OUT i
denotes output beliefs of context Ci, which are those beliefs p in BSi that occur in some
bridge rule body in brM as “(i:p)” or as “not (i:p)” (see also [
        <xref ref-type="bibr" rid="ref13">13</xref>
        ]). By brM = Sn
i=1 br i
we denote the set of all bridge rules of M , and by ctxM = {C1, . . . , Cn} the set of all
contexts of M .
      </p>
      <p>
        Example 2 (generalized from [
        <xref ref-type="bibr" rid="ref13">13</xref>
        ]). Consider a MCS M1 in a hospital which comprises
the following contexts: a patient database Cdb , a blood and X-Ray analysis database Clab ,
a disease ontology Conto , and an expert system Cdss which suggests proper treatments.
Knowledge bases are given below; initial uppercase letters are used for variables and
description logic concepts.
      </p>
      <p>kbdb = {person(sue, 02/03/1985 ), allergy (sue, ab1 )},
kblab = {customer (sue, 02/03/1985 ), test (sue, xray , pneumonia),
test (Id , X, Y ) → ∃D : customer (Id , D)),
customer (Id , X) ∧ customer (Id , Y ) → X = Y },
kbonto = {Pneumonia u Marker v AtypPneumonia},
kbdss = {give(Id , ab1 ) ∨ give(Id , ab2 ) ← need (Id , ab).</p>
      <p>give(Id , ab1 ) ← need (Id , ab1 ).</p>
      <p>¬give(Id , ab1 ) ← not allow (Id , ab1 ), need (Id , Med ).}.</p>
      <p>
        Context Cdb uses propositional logic (see Example 1) and provides information that Sue
is allergic to antibiotics ‘ab1 ’. Context Clab is a database with constraints which stores
laboratory results connected to Sue: pneumonia was detected in an X-ray. Constraints
enforce, that each test result must be linked to a customer record, and that each customer
has only one birth date. Conto specifies that presence of a blood marker in combination
with pneumonia indicates atypical pneumonia. This context is based on AL, a basic
description logic [
        <xref ref-type="bibr" rid="ref1">1</xref>
        ]: KBonto is the set of all well-formed theories within that description
logic, BSonto is the powerset of the set of all assertions C(o) where C is a concept
name and o an individual name, and ACConto returns the set of all concept assertions
entailed by a given theory. Cdss is an ASP that suggests a medication using the give
predicate.
      </p>
      <p>We next give schemas for bridge rules of M1.</p>
      <p>r1 = (lab : customer (Id , Birthday )) ← (db : person(Id , Birthday )).
r2 = (onto : Pneumonia(Id )) ← (lab : test (Id , xray , pneumonia)).
r3 = (onto : Marker (Id )) ← (lab : test (Id , bloodtest , m1 )).
r4 = (dss : need (Id , ab)) ← (onto : Pneumonia(Id )).
r5 = (dss : need (Id , ab1 )) ← (onto : AtypPneumonia(Id )).
r6 = (dss : allow (Id , ab1 )) ← not (db : allergy (Id , ab1 ).</p>
      <p>Rule r1 links the patient records with the lab database (so patients do not need to enter
their data twice). Rules r2 and r3 provide test results from the lab to the ontology. Rules
r4 and r5 link disease information with medication requirements, and r6 associates
acceptance of the particular antibiotic ‘ab1 ’ with a negative allergy check on the patient
database.
tu</p>
      <p>
        Equilibrium semantics [
        <xref ref-type="bibr" rid="ref5">5</xref>
        ] selects certain belief states of a MCS M = (C1, . . . , Cn) as
acceptable. A belief state is a sequence S = (S1, . . . , Sn), s.t. Si ∈ BSi. A bridge rule (1)
is applicable in S iff for 1 ≤ i ≤ j: pi ∈ Sci and for j &lt; l ≤ m: pl ∈/ Scl . Let app(R, S)
denote the set of bridge rules in R that are applicable in belief state S. Then a belief state
S = (S1, . . . , Sn) of M is an equilibrium iff, for 1 ≤ i ≤ n, the following condition
holds: Si ∈ ACCi(kbi ∪ {hd (r) | r ∈ app(br i, S)}).
      </p>
      <p>
        In our running example we use bridge rules with variables, here we disregard the
issue of instantiating these rules [
        <xref ref-type="bibr" rid="ref16">16</xref>
        ]. We denote by r[X|c] the ground version of bridge
rule r where variable X has been substituted by constant c.
      </p>
      <p>
        Example 3 (ctd). MCS M1 has one equilibrium S = (Sdb , Slab , Sonto , Sdss ), where
Sdb = kbdb , Slab = {customer (sue, 02/03/1985 ), test (sue, xray , pneumonia)},
Sonto = {Pneumonia(sue)}, and Sdss = {need (sue, ab), give(sue, ab2 ), ¬give(sue,
ab1 )}. Moreover, the following bridge rules of M1 are applicable under S: r1[Id |sue,
Birthday |02/03/1985 ], r2[Id |sue], and r4[Id |sue]. tu
Explaining Inconsistency in MCSs. Inconsistency in a MCS is the lack of an
equilibrium[
        <xref ref-type="bibr" rid="ref13">13</xref>
        ]. Note that no equilibrium may exist even if all contexts are ‘paraconsistent’ in
the sense that ACC is never empty. No information can be obtained from an
inconsistent MCS, e.g., inference tasks like brave or cautious reasoning on equilibria become
trivial. To analyze, and eventually repair, inconsistency in a MCS, we use the notions
of consistency-based diagnosis and entailment-based inconsistency explanation [
        <xref ref-type="bibr" rid="ref13">13</xref>
        ],
which characterize inconsistency by sets of involved bridge rules.
      </p>
      <p>
        Intuitively, a diagnosis is a pair (D1, D2) of sets of bridge rules which represents a
concrete system repair in terms of removing rules D1 and making rules D2 unconditional.
The intuition for considering rules D2 as unconditional is that the corresponding rules
should become applicable to obtain an equilibrium. One could consider more fine-grained
changes of rules such that only some body atoms are removed instead of all. However,
this increases the search space while there is little information gain: every diagnosis
(D1, D2) as above, together with a witnessing equilibrium S, can be refined to such
a generalized diagnosis. Dual to that, inconsistency explanations (short: explanations)
separate independent inconsistencies. An explanation is a pair (E1, E2) of sets of bridge
rules, such that the presence of rules E1 and the absence of heads of rules E2 necessarily
makes the MCS inconsistent. In other words, bridge rules in E1 cause an inconsistency
in M which cannot be resolved by considering additional rules already present in M
or by modifying rules in E2 (in particular making them unconditional). See [
        <xref ref-type="bibr" rid="ref13">13</xref>
        ] for
formal definitions of these notions, relationships between them, and more background
discussion.
      </p>
      <p>Example 4 (ctd). Consider a MCS M2 given by our example MCS M1 with different
knowledge bases kbdb = {person(sue, 03/02/1985 ), allergy (sue, ab1 )} (i.e., month
and day of the birth date are swapped) and kblab containing an additional finding
test (sue, bloodtest , m1 ). M2 is inconsistent with Em±(M2) = {e1, e2} and Dm±(M2) =
{d1, d2, d3, d4}, where e1 = ({r10}, ∅), e2 = ({r20, r0 , r50}, {r60}), d1 = ({r10, r20}, ∅), d2 =
3
({r10, r30}, ∅), d3 = ({r10, r50}, ∅), d4 = ({r10}, {r60}), and where r10 = r1[Id |sue,
Birthday |03/02/1985 ], and rj0 = rj [Id |sue], j ∈ {2, 3, 5, 6}. Em±(M2) characterizes two
inconsistencies in M2, namely e1: Clab does not accept any belief set because constraint
customer (Id , X) ∧ customer (Id , Y ) → X = Y is violated; furthermore e2: if we
assume e1 is repaired, then Conto accepts AtypPneumonia(sue) in its unique accepted
belief set, therefore r5[Id |sue] imports the need for ab1 into Cdss which makes Cdss
inconsistent due to Sue’s allergy.
3</p>
    </sec>
    <sec id="sec-3">
      <title>Policy Language IMPL</title>
      <p>tu
tu
Dealing with inconsistency in an application scenario is difficult, because even if
inconsistency analysis provides information how to restore consistency, it is not obvious
which choice of system repair is rational. It may not even be clear whether it is wise at
all to repair the system by changing bridge rules.</p>
      <p>Example 5 (ctd). Repairing e1 by ignoring the birth date (which differs at the granularity
of months) may be the desired reaction and could very well be done automatically. On
the contrary, repairing e2 by ignoring either the allergy or the illness is a decision that
should be left to a doctor, as every possible repair could cause serious harm to Sue.
Therefore, managing inconsistency in a controlled way is crucial. To address these
issues, we propose a declarative policy language IMPL, which provides a means to create
policies for dealing with inconsistency in MCSs. Intuitively, an IMPL policy specifies
(i) which inconsistencies are repaired automatically and how this shall be done, and
(ii) which inconsistencies require further external input, e.g., by a human operator, to
make a decision on how and whether to repair the system. Note that we do not rule out
automatic repairs, but — contrary to previous approaches — automatic repairs are done
only if a given policy specifies to do so, and only to the extent specified by the policy.</p>
      <p>Since a major point of MCSs is to abstract away context internals, IMPL treats
inconsistency by modifying bridge rules. For the scope of this work we delegate any
potential repair by modifying the kb of a context to the user. The effect of applying
an IMPL policy to an inconsistent MCS M is a modification (A, R), which is a pair of
sets of bridge rules which can be (but not necessarily are) part of brM , and which are
syntactially compatible with M . Intuitively, a modification specifies bridge rules A to be
added to M and bridge rules R to be removed from M , similar as for diagnoses without
restriction to the original rules of M .</p>
      <p>In the following we formally define syntax and semantics of IMPL.
3.1</p>
      <sec id="sec-3-1">
        <title>Syntax.</title>
        <p>We assume disjoint sets C, V, Ord , Built , and Act , of constants, variables, ordinary
predicate names, built-in predicate names, and action names, resp. An atom is of the
form p(t1, . . . , tk), 0 ≤ k, ti ∈ T , where the set of terms T is defined as T = C ∪ V ,
and p is a (built-in or ordinary) predicate name or an action name. As usual, an atom is
ground if ti ∈ C for 0 ≤ i ≤ k. The set AAct of action atoms has p ∈ Act , while AOrd ,
respectively ABuilt , denotes the set of ordinary atoms having p ∈ Ord , respectively the
set of built-in atoms with p ∈ Built .</p>
        <p>Definition 1. An IMPL policy is a set of rules of the form
h ← a1, . . . , aj , not aj+1, . . . , not ak.
(2)
where h is an atom from AOrd ∪ AAct or ⊥, every ai is from AOrd ∪ ABuilt , for
1 ≤ i ≤ k, and ‘not‘ is negation as failure.</p>
        <p>Given a rule r, we denote by H(r) its head, by B+(r) = {a1, . . . , aj } its positive body
atoms, and by B−(r) = {aj+1, . . . , ak} its negative body atoms. A rule is ground if it
contains ground atoms only. A ground rule with k = 0 is a fact.</p>
        <p>An IMPL policy P is intended to be evaluted provided some input IM respresenting
relevant information about a given MCS M . The idea is that its evaluation yields certain
actions to be taken upon inconsistency, which effect modifications of the MCS with the
goal of restoring consistency. For representing basic inputs and actions, we consider
specific predicate and action names. Corresponding atoms follow a particular syntax and
semantics. We first present their syntax and provide intuitions of their semantics.
Reserved Predicates. Atoms with reserved predicate names provide a policy with
information about the system at hand, and about results of inconsistency analysis on that
system. Essentially, these atoms describe bridge rules, diagnoses, and explanations of a
given MCS. Note that elements of these descriptions, like contexts, bridge rules, beliefs,
etc., are assumed to be represented by suitable constants. For brevity, when referring
to an element represented by a constant c, we identify it with the constant (omitting
‘represented by constant’).
• ruleHead (r, c, s) denotes that the head of bridge rule r at context c is the formula s.
• ruleBody +(r, c, b) (resp., ruleBody −(r, c, b)) denotes that bridge rule r contains
body literal ‘(c : b)’ (resp., body literal ‘not (c : b)’).
• modAdd (m,r) (resp., modDel (m,r)) denotes that modification m adds (resp., deletes)
bridge rule r (r is represented using ruleHead and ruleBody ).
• diag (m) denotes that modification m is a minimal diagnosis in M .
• explNeed (e, r) (resp., explForbid (e, r)) denotes that the minimal explanation (E1,</p>
        <p>E2) ∈ Em±(M ) identified by constant e contains bridge rule r ∈ E1 (resp., E2).
• member (ms, m) denotes that modification m belongs to a set of modifications ms.
• #id (t, c, i) is a builtin predicate with the intention to handle the assignment of ‘fresh’
constants (not appearing in the input to a policy) as identifiers more easily (i.e., it
facilitates limited value invention). Intuitively, #id (t, c, i) is true iff c is a constant, i
is a non-negative integer constant (from a fixed, finite range, see also Sec. 3.2), and
t = ci, for a particular constant ci.</p>
        <p>
          Further knowledge used as input for policy reasoning can easily be defined using
additional (auxiliary) predicates. For instance, to encode preference relations (e.g., as in [
          <xref ref-type="bibr" rid="ref14">14</xref>
          ])
between system parts, diagnoses, or explanations, an atom preferredContext (c1, c2)
could denote that context c1 is considered more reliable than context c2. The extensions
of such auxiliary predicates need to be defined by the rules of the policy (ordinary
predicates) or provided by the implementation (built-in predicates), i.e., the ‘solver’ used
to evaluate the policy.
        </p>
        <p>As for notation, given a set of ground atoms IM and a constant c, we denote
by ruleI (c) the bridge rule identified by c and characterized in I by ruleHead and
ruleBody ± atoms. Similarly, we denote by modificationI (c) = (A, R) the modification
c characterized in I by modAdd , modDel , ruleHead and ruleBody ± atoms.
Note, that reserved predicates, except for the built-in #id , are also allowed to occur in
the head of policy rules.</p>
        <p>Actions. Let us turn to the syntax and intuitive semantics of action atoms built from
predefined action names. (We prefix action names from Act with @). We assume that
actions are independent from one another and each action yields a modification of the
MCS. This modification can depend on external input, e.g., obtained by user interaction.</p>
        <p>We distinguish three categories of actions: (a) actions that affect individual bridge
rules, (b) actions that affect multiple bridge rules, and (c) actions that involve user
interaction (and affect individual or multiple bridge rules).</p>
        <p>The following actions affect individual bridge rules.
• @delRule(r) removes bridge rule r from the MCS (r is represented using ruleHead
and ruleBody ).
• @addRule(r) adds bridge rule r to the MCS.
• @addRuleCondition+(r, c, b) (resp., @addRuleCondition−(r, c, b)) adds body
literal (c : b) (resp., not (c : b)) to bridge rule r.
• @delRuleCondition+(r, c, b) (resp., @delRuleCondition−(r, c, b)) removes body
literal (c : b) (resp., not (c : b)) from bridge rule r.
• @makeRuleUnconditional (r) makes bridge rule r unconditional.</p>
        <p>The following actions (potentially) affect multiple bridge rules.
• @applyMod (m) applies modification m to the MCS.
• @applyModAtContext (m, c) applies those modifications of m to the MCS which
modify bridge rules at context c. Subsequently, we call this the projection of
modification m to context c.</p>
        <p>The following actions involve user interaction.
• @guiSelectMod (ms) displays a GUI for choosing from the set of modifications ms.</p>
        <p>The chosen modification is applied to the MCS.
• @guiEditMod (m) displays a GUI for editing modification m. The resulting
modification is applied to the MCS.
• @guiSelectModAtContext (ms, c) projects modifications in ms to c, displays a GUI
for choosing among them and applies the chosen modification to the MCS.
• @guiEditModAtContext (m, c) projects modification m to context c, displays a GUI
for editing it, and applies the resulting modification to the MCS.</p>
        <p>The core fragment of IMPL consists of actions @delRule, @addRule, @guiSelectMod ,
and @guiEditMod , which are sufficient for realizing all actions described above. Actions
not in the core fragment exist for convenience of use: they provide a means for projection
and modifying only parts of rules which otherwise would need to be encoded using
auxiliary predicates and core actions.</p>
        <p>Example 7. Given a set of ground atoms IM , making bridge rules r with foo(r) ∈ IM
unconditional can be achieved using a single rule with the action:</p>
        <p>@makeRuleUnconditional (R) ← foo(R).</p>
        <p>The following IMPL policy fragment achieves the same using only core actions:</p>
        <p>% associate new constant with R to get identifier for rule derived from R
aux (Rid , R) ← foo(R), #id (Rid , R, 1).
% copy existing rule heads (don’t copy body literals)
ruleHead (Rid , C, S) ← ruleHead (R, C, S), aux (Rid , R).
% trigger actions
@delRule(R) ← aux (Rid , R).</p>
        <p>@addRule(Rid ) ← aux (Rid , R).
(Here and in the following, lines starting with % indicate comments.)
tu
tu
Example 8 (ctd). Figure 1 shows three policies for managing inconsistency in M2. Let
us briefly illustrate their intended behaviour (before turning to a formal definition of
semantics next). P1 deals with inconsistencies at Clab : if an explanation concerns only
bridge rules at Clab , an arbitrary diagnosis is applied at Clab , other inconsistencies are
not handled. Intuitively, applying P1 to M2 yields M3 (any chosen diagnosis removes
exactly r10 at Clab ): M3 is still inconsistent due to e2 but no longer due to e1. P2 extends
P1 by adding an ‘inconsistency alert formula’ alert to Clab iff an inconsistency was
automatically repaired at Clab . Finally, P3 is a different approach which displays a
choice of all minimal diagnoses to the user if at least one diagnosis exists.</p>
        <p>Note, that we did not combine automatic actions and user-interactions; this would
require more involved policies or an iterative methodology (cf. Sec. 4).
3.2</p>
      </sec>
      <sec id="sec-3-2">
        <title>Semantics</title>
        <p>The semantics of IMPL is defined in three steps: (i) policy answer sets are defined for
a policy together with some input, each answer set represents a set of actions (to be
executed); (ii) every action has associated effects in terms of a modification (A, R), they
can be nondeterministic (and thus only determined by executing the action). Finally
(iii) materializing the effects of a set of (executed) actions is defined by combining their
effects, i.e., modifications (componentwise union), and applying the respective changes
to the MCS at hand. We next describe these steps more formally.</p>
        <p>
          Action Determination. We define IMPL policy answer sets similar to the stable model
semantics [
          <xref ref-type="bibr" rid="ref17">17</xref>
          ]. Given a MCS M , we associate with it a finite (nonempty) set of constants
CM ⊂ C, used as identifiers for representing its elements by means of the (ordinary)
reserved predicates, as well as a finite set of integer constants CN ⊂ C. Furthermore, let
Cid be a set of ‘fresh’ constants, i.e., disjoint from CM ∪ CN , containing exactly one
constant ci ∈ C for every (pair of constants) c ∈ CM and i ∈ CN , and let id be a fixed
(built-in) one-to-one mapping from CM × CN to Cid .
        </p>
        <p>For a policy P , let cons(P ) ⊂ C denote the set of constants appearing in P . The
policy base BP of P (given M ) is the set of ground atoms that can be built using ordinary
reserved predicate and action names, as well as any auxiliary ordinary predicate and
action names appearing in P , and constants from CP,M = cons(P ) ∪ CM ∪ CN ∪ Cid .</p>
        <p>The grounding of P , grnd (P ) is given by grounding its rules wrt. CP,M in the usual
way. An interpretation is a set of ground atoms I ⊆ BP .</p>
        <p>For an atom a ∈ BP , as usual I |= a iff a ∈ I, and for a ground built-in atom a
of the form #id (t1, t2, t3), it holds that I |= a iff (t2, t3) is in the domain of id and
t1 = id (t2, t3). For a ground rule r, (i) I |= B(r) iff I |= a for every a ∈ B+(r) and
8% domain predicate for eplanations 9
P1 = &gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&lt;iiie%nnnxcccpfiLNNln(aoodEbttoLL)←uaa←tbbew((exEEhxpepl))t(lh←←NEere)eee,oxxdnnpp(eollEFNteoi,xenRrpecbdl)aNi(.dnEoa(ttE,eLioRxa,npR)bl,o(()rnEE,ulry)l)ue.c←lHeoHeneacexdeapr(dnlRFs(oR,brCr,biC,diFdg,e(F)E,r)uC,,l RCe6=s)6 =.actlacCbla.lbab. &gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;=&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;
&gt;&gt;&gt;% guess a unique diagnosis to apply &gt;&gt;&gt;&gt;
&gt;&gt;&gt;in(D) ← not out (D), diag(D), incLab. out (D) ← not in(D), diag(D), incLab.&gt;&gt;
&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;:u@%saeapOpppnllyeyM←doiadignAn(otDCsios).np⊥treox←jetc(itDend,(cAtola)bC,)iln←ab( Biufs)oe,nADe i6=wagaB(s D.se⊥)l.e←ctednot useOne, incLab. &gt;&gt;&gt;&gt;&gt;&gt;&gt;;&gt;&gt;&gt;
8% inconsistency alert 9
P2 = &lt;ruleHead (ralert , clab , alert ). = ∪ P1
:@addRule(ralert ) ← incLab.;
8% let the user choose from all diagnoses if there is a diagnosis9
P3 = &lt;member (md , X) ← diag(X). =
:@guiSelectMod (md ). ;</p>
        <p>
          I 6|= a for all a ∈ B−(r), and (ii) I |= r iff I |= H(r) or I 6|= B(r). Then, I is a model
of P , denoted I |= P , iff I |= r for all r ∈ grnd (P ). The FLP-reduct [
          <xref ref-type="bibr" rid="ref15">15</xref>
          ] of P wrt. an
interpretation I, denoted fP I , is the set of all r ∈ grnd (P ) such that I |= B(r).
Definition 2 (Policy Answer Sets). Let P be an IMPL policy P , and let IM ⊆ BP be
an input for P . An interpretation I ⊆ BP is a policy answer set of P for IM iff I is a
⊆-minimal model of fP I ∪ IM . By AS(P, IM ) we denote the set of all policy answer
sets of P for IM .
        </p>
        <p>Effect Determination. We define the effects of action predicates @a ∈ Act by
nondeterministic functions f@a. Nondeterminism is required to due to external input, resp. user
interaction. An action is evaluated wrt. a policy answer set.</p>
        <p>Definition 3. Given a policy answer set I, and an action α = @a(t1, . . . , tk) in I, an
effect of α wrt. I, denoted effI (α), is a modification (A, R) = f@a(I, t1, . . . , tk).
Action predicates of the IMPL core fragment have the following semantic functions. (For
brevity we omit semantics of actions that are not in the core fragment.)
• f@delRule (I, r) = (∅, {ruleI (r)}).
• f@addRule (I, r) = ({ruleI (r)}, ∅).
• f@guiSelectMod (I, ms) = modificationI (m), for some modification m such that
m ∈ {m | member (ms, m) ∈ I} (the user’s selection after being displayed the choice
among modifications {modificationI (m) | member (ms, m) ∈ I}).
• f@guiEditMod (I, m) = (A0, R0), where (A0, R0) is some modification (resulting from
the user interaction after being displayed an editor for the modification (A, R) =
modificationI (m)).</p>
        <p>Note, that no order of evaluating actions is specified or required. We say that a set EI of
modifications is an effect set for a policy answer set I, iff it contains exactly one effect
effI (α) for every α in I.</p>
        <p>Effect Materialization Once the effects of actions have been determined, an overall
modification is calculated by componentwise union over all individual modifications.
Finally, this overall modification is materialized in the MCS.</p>
        <p>Definition 4. Given a MCS M and a policy answer set I, a materialization of I in
M is a MCS M 0 obtained from M by replacing its set of bridge rules brM by the set
brM \ R ∪ A, where (A, R) = S(A,R) ∈ EI (A, R), for an effect set EI for I.
Note that by definition addition of bridge rules has precedence over removal.3</p>
        <p>Eventually, we can define modifications of a MCS that are accepted by a
corresponding policy for managing inconsistency. Skipping a straightforward formal definition, let
us say that a set of ground atoms IM is a proper input for an IMPL policy P wrt. a MCS
M , if it properly encodes M , Dm±(M ), and Em±(M ) using reserved predicates.
Definition 5. Given a MCS M , an IMPL policy P , and a proper input IM for P wrt. M ,
then a modified MCS M 0 is an admissible modification of M wrt. policy P iff M 0 is the
materialization of some policy answer set I ∈ AS(P ∪ IM ).</p>
        <p>Example 9 (ctd). For brevity we do not give a full account of a proper IM2 . Intuitively
IM2 = Sa ∈ {e1,e2,d1,d2,d3,d4} Ia where Iei represents explanation ei and Idi represents
diagnosis di, e.g., Ie1 is described in Ex. 6. Evaluating P2 ∪ IM2 yields four policy
answer sets; one is I1 = IM2 ∪ {expl (e1), expl (e2), incNotLab(e2), incLab, in(d1),
out (d2), out (d3), out (d4), useOne, ruleHead (ralert , clab , alert ), @addRule(ralert ),
@applyModAtContext (d1, clab )}. Evaluating P3 ∪ IM2 yields exactly one policy
answer set, which is I2 = IM2 ∪ {@guiSelectMod (diag )}.</p>
        <p>From I1 we obtain a single admissible modification of M wrt. P2: add bridge rule
ralert and remove r10. Determining the effect of I2 involves user interaction; thus multiple
materializations of I2 exist. For instance, if the user chooses to ignore Sue’s allergy (and
birth date) by selecting d4 (and probably imposing additional monitoring for Sue), we
obtain an admissible modification of M which adds bridge rule r60 and removes r10. tu
4</p>
      </sec>
    </sec>
    <sec id="sec-4">
      <title>Methodologies of Applying IMPL and Realization</title>
      <p>For applying IMPL and integrating it with a MCS and user interaction, we next develop
methodologies, based on a simple system design shown in Figure 2. Due to space
constraints, we only give an informal discussion.</p>
      <p>
        We represent the MCS as containing a store of modifications. The semantics
evaluation component performs reasoning tasks on the MCS and invokes the inconsistency
manager in case of an inconsistency. This inconsistency manager uses the inconsistency
analysis component4 to provide input for the policy engine which calculates policy
answer sets of a given IMPL policy wrt. the MCS and its inconsistency analysis result.
This policy evaluation step results in action executions potentially involving user
interactions and causes changes to the store of modifications, which are subsequently
materialized. Finally the inconsistency manager hands control back to the semantics
evaluation component. Let us discuss principal modes of operation and their merits next.
3 There is no particular reason for this choice of precedence; one just has to be aware of it when
specifying a policy.
4 For realizations of this component we refer to [
        <xref ref-type="bibr" rid="ref13 ref3">3, 13</xref>
        ].
      </p>
      <sec id="sec-4-1">
        <title>Multi</title>
      </sec>
      <sec id="sec-4-2">
        <title>Context</title>
      </sec>
      <sec id="sec-4-3">
        <title>System</title>
      </sec>
      <sec id="sec-4-4">
        <title>Store of</title>
      </sec>
      <sec id="sec-4-5">
        <title>Modifi cations</title>
      </sec>
      <sec id="sec-4-6">
        <title>Semantics</title>
      </sec>
      <sec id="sec-4-7">
        <title>Evaluation</title>
      </sec>
      <sec id="sec-4-8">
        <title>Inconsistency</title>
      </sec>
      <sec id="sec-4-9">
        <title>Analysis</title>
      </sec>
      <sec id="sec-4-10">
        <title>Inconsistency</title>
      </sec>
      <sec id="sec-4-11">
        <title>Manager</title>
      </sec>
      <sec id="sec-4-12">
        <title>Policy</title>
      </sec>
      <sec id="sec-4-13">
        <title>Engine</title>
      </sec>
      <sec id="sec-4-14">
        <title>User</title>
      </sec>
      <sec id="sec-4-15">
        <title>Interaction</title>
      </sec>
      <sec id="sec-4-16">
        <title>Policy</title>
        <p>control flow</p>
        <p>data flow</p>
        <p>Reason and Manage once. This mode of operation evaluates the policy once, if the
effect materialization does not repair inconsistency in the MCS, no further attempts are
made and the MCS stays inconsistent. This mode while simple may not be satisfying in
practice.</p>
        <p>We can improve on the approach by extending actions with priority: the result of
a single policy evaluation step then is a sequence of sets of actions, corresponding
to several attempts for repairing the MCS. This can be exploited for writing policies
that ensure repairs, by first attempting a ‘sophisticated’ repair possibly involving user
interaction, and — if this fails — to simply apply some diagnosis to ensure consistency
while the problem may be further investigated.</p>
        <p>Reason and Manage iteratively. We now consider a mode where failure to restore
consistency simply invokes policy evaluation again on the modified but still inconsistent
system. This is useful if user interaction involves trial-and-error, especially if multiple
inconsistencies occur — some might be more difficult to counteract than others.</p>
        <p>Another positive aspect of iterative policy evaluation is, that policies may be
structured, e.g., as follows: (a) classify inconsistencies into automatically vs manually
repairable; (b) apply actions to repair one of the automatically repairable inconsistencies;
if such inconsistencies do not exist (c) apply user interaction actions to repair one (or all)
of the manually repairable inconsistencies. Such policy structuring follows a
divide-andconquer approach, trying to focus on individual sources of inconsistency and to disregard
interactions between inconsistencies as much as possible. If user interaction consists of
trial-and-error bugfixing, fewer components of the system are changed in each iteration,
and the user starts from a situation where only critical (i.e. not automatically repairable)
inconsistencies are present in the MCS. Moreover, such policies may be easier to write
and maintain.</p>
        <p>Termination of iterative methodologies is not guaranteed. However one can enforce
termination by limiting the number of iterations, possibly by extending IMPL with a
control action that configures this limit.</p>
        <p>In iterative mode, passing information from one iteration to the next can be useful.
This can be accomplished by extending IMPL with add and delete actions which modify
an iteration-persistent knowledge base, which is given to a policy as further input facts,
represented using an additional dedicated predicate.</p>
        <p>
          Realization in acthex The acthex formalism [
          <xref ref-type="bibr" rid="ref2">2</xref>
          ] extends answer set programs with
external computations in bodies of rules, and action in heads of rules. Actions have
an effect on an environment and this effect can use information from the answer set in
which the action is present. Using acthex for realizing IMPL is a good choice because
acthex already natively provides several features necessary for IMPL: external atoms
can be used to access external information, and acthex actions come with weights for
creating ordered execution schedules for actions occurring withinin the same answer
set of an acthex program. Based on this, IMPL can be implemented by a rewriting to
acthex, with acthex actions implementing IMPL actions, and acthex external predicates
providing information about the MCS to the IMPL policy.
        </p>
        <p>Using acthex to implement IMPL facilitates further extensions of IMPL, since new
actions and external atoms can be added to acthex with little effort.
5</p>
      </sec>
    </sec>
    <sec id="sec-5">
      <title>Conclusion</title>
      <p>
        A language related to IMPL is the action language IMPACT [
        <xref ref-type="bibr" rid="ref22">22</xref>
        ], a declarative formalism
for actions in distributed and heterogeneous multi-agent systems. While most parts of
IMPL could be embedded in IMPACT, the latter is a very rich general purpose formalism,
which is difficult to manage compared to the special purpose language IMPL. Furthermore,
user interaction is not directly supported in IMPACT.
      </p>
      <p>
        Policy languages have been studied in detail in the fields of access control, e.g.,
surveyed in [
        <xref ref-type="bibr" rid="ref4">4</xref>
        ], and privacy restrictions [
        <xref ref-type="bibr" rid="ref11">11</xref>
        ]. Notably, PDL [
        <xref ref-type="bibr" rid="ref10">10</xref>
        ] is a declarative
policy language based on logic programming which maps events in a system to actions.
It is richer than IMPL wrt. action interdependencies, whereas actions in IMPL have a
richer internal structure and depend on the content of a policy answer set. Similarly,
inconsistency analysis input in IMPL has a deeper structure than events in PDL.
      </p>
      <p>
        In the context of relational databases, logic programs have been used for specifying
repairs for databases that are inconsistent wrt. a set of integrity constraints [
        <xref ref-type="bibr" rid="ref12 ref19 ref20">19, 12,
20</xref>
        ]. Thus, they may be considered fixed policies without user interaction akin to an
IMPL policy simply applying diagnoses in a homogenous MCS. Note however that one
motivation for developing IMPL is that attempting automatic repair may not always be a
viable option to deal with inconsistency in a MCS. In order to specify repair strategies for
inconsistent databases in a more flexible way, active integrity constraints (AICs) [
        <xref ref-type="bibr" rid="ref7 ref8 ref9">7–9</xref>
        ]
and inconsistency management policies (IMPs) [
        <xref ref-type="bibr" rid="ref21">21</xref>
        ] have been proposed. AICs extend the
notion of integrity constraints by introducing update actions, for inserting and deleting
tuples, to be performed if the constraint is not satisfied; whereas an IMP is a function
defined wrt. a set of functional dependencies that maps a given relation R to a ‘modified’
relation R0 obeying some basic axioms.
      </p>
      <p>A conceptual difference between IMPL and the above approaches to database repair
and inconsistency management is that IMPL policies aim at restoring consistency by
modifying bridge rules leaving the knowledge bases unchanged rather than considering a
(fixed) set of constraints and repairing the database. Moreover, IMPL policies operate on
heterogeneous knowledge bases and may involve user interaction. Nevertheless, database
repair programs, AICs and (certain) IMPs may by mimicked for particular classes of
integrity constraints by corresponding IMPL policies given suitable encodings.</p>
      <p>Ongoing work comprises the actual implementation of IMPL. Recalling that we
currently just consider bridge rule modifications for system repairs, an interesting issue for
further research is to drop this convention. This would mean to also allow modifications
of knowledge bases of (some) contexts for repair, and to extend IMPL accordingly.</p>
    </sec>
  </body>
  <back>
    <ref-list>
      <ref id="ref1">
        <mixed-citation>
          1.
          <string-name>
            <surname>Baader</surname>
            ,
            <given-names>F.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Calvanese</surname>
            ,
            <given-names>D.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>McGuinness</surname>
            ,
            <given-names>D.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Nardi</surname>
            ,
            <given-names>D.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Patel-Schneider</surname>
            ,
            <given-names>P</given-names>
          </string-name>
          . (eds.):
          <source>The Description Logic Handbook: Theory, Implementation and Applications</source>
          . Cambridge (
          <year>2003</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref2">
        <mixed-citation>
          2.
          <string-name>
            <surname>Basol</surname>
            ,
            <given-names>S.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Erdem</surname>
            ,
            <given-names>O.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Fink</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Ianni</surname>
          </string-name>
          , G.:
          <article-title>HEX programs with action atoms</article-title>
          .
          <source>In: ICLP</source>
          . pp.
          <fpage>24</fpage>
          -
          <lpage>33</lpage>
          (
          <year>2010</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref3">
        <mixed-citation>
          3. Bo¨gl,
          <string-name>
            <given-names>M.</given-names>
            ,
            <surname>Eiter</surname>
          </string-name>
          ,
          <string-name>
            <given-names>T.</given-names>
            ,
            <surname>Fink</surname>
          </string-name>
          ,
          <string-name>
            <surname>M.</surname>
          </string-name>
          , Schu¨ller, P.:
          <article-title>The MCS-IE system for explaining inconsistency in multi-context systems</article-title>
          .
          <source>In: JELIA</source>
          . pp.
          <fpage>356</fpage>
          -
          <lpage>359</lpage>
          (
          <year>2010</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref4">
        <mixed-citation>
          4.
          <string-name>
            <surname>Bonatti</surname>
            ,
            <given-names>P.A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Coi</surname>
            ,
            <given-names>J.L.D.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Olmedilla</surname>
            ,
            <given-names>D.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Sauro</surname>
            ,
            <given-names>L.</given-names>
          </string-name>
          :
          <article-title>Rule-based policy representations and reasoning</article-title>
          . In: Bry,
          <string-name>
            <given-names>F.</given-names>
            ,
            <surname>Maluszynski</surname>
          </string-name>
          ,
          <string-name>
            <surname>J</surname>
          </string-name>
          . (eds.) REWERSE, vol.
          <volume>5500</volume>
          , pp.
          <fpage>201</fpage>
          -
          <lpage>232</lpage>
          (
          <year>2009</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref5">
        <mixed-citation>
          5.
          <string-name>
            <surname>Brewka</surname>
            ,
            <given-names>G.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Eiter</surname>
            ,
            <given-names>T.</given-names>
          </string-name>
          :
          <article-title>Equilibria in heterogeneous nonmonotonic multi-context systems</article-title>
          .
          <source>In: AAAI Conference on Artificial Intelligence (AAAI)</source>
          . pp.
          <fpage>385</fpage>
          -
          <lpage>390</lpage>
          (
          <year>2007</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref6">
        <mixed-citation>
          6.
          <string-name>
            <surname>Brewka</surname>
            ,
            <given-names>G.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Roelofsen</surname>
            ,
            <given-names>F.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Serafini</surname>
            ,
            <given-names>L.</given-names>
          </string-name>
          :
          <article-title>Contextual default reasoning</article-title>
          .
          <source>In: IJCAI</source>
          . pp.
          <fpage>268</fpage>
          -
          <lpage>273</lpage>
          (
          <year>2007</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref7">
        <mixed-citation>
          7.
          <string-name>
            <surname>Caroprese</surname>
            ,
            <given-names>L.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Greco</surname>
            ,
            <given-names>S.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Zumpano</surname>
          </string-name>
          , E.:
          <article-title>Active integrity constraints for database consistency maintenance</article-title>
          .
          <source>IEEE Trans. Knowl. Data Eng</source>
          <volume>21</volume>
          (
          <issue>7</issue>
          ),
          <fpage>1042</fpage>
          -
          <lpage>1058</lpage>
          (
          <year>2009</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref8">
        <mixed-citation>
          8.
          <string-name>
            <surname>Caroprese</surname>
            ,
            <given-names>L.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Truszczynski</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          :
          <article-title>Declarative semantics for active integrity constraints</article-title>
          .
          <source>In: ICLP</source>
          . vol.
          <volume>5366</volume>
          , pp.
          <fpage>269</fpage>
          -
          <lpage>283</lpage>
          (
          <year>2008</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref9">
        <mixed-citation>
          9.
          <string-name>
            <surname>Caroprese</surname>
            ,
            <given-names>L.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Truszczynski</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          :
          <article-title>Declarative semantics for revision programming and connections to active integrity constraints</article-title>
          .
          <source>In: JELIA</source>
          . vol.
          <volume>5293</volume>
          , pp.
          <fpage>100</fpage>
          -
          <lpage>112</lpage>
          (
          <year>2008</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref10">
        <mixed-citation>
          10.
          <string-name>
            <surname>Chomicki</surname>
            ,
            <given-names>J.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Lobo</surname>
            ,
            <given-names>J.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Naqvi</surname>
            ,
            <given-names>S.A.:</given-names>
          </string-name>
          <article-title>A logic programming approach to conflict resolution in policy management</article-title>
          .
          <source>In: KR</source>
          . pp.
          <fpage>121</fpage>
          -
          <lpage>132</lpage>
          (
          <year>2000</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref11">
        <mixed-citation>
          11.
          <string-name>
            <surname>Duma</surname>
            ,
            <given-names>C.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Herzog</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Shahmehri</surname>
          </string-name>
          , N.:
          <article-title>Privacy in the semantic web: What policy languages have to offer</article-title>
          . In: POLICY. pp.
          <fpage>109</fpage>
          -
          <lpage>118</lpage>
          (
          <year>2007</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref12">
        <mixed-citation>
          12.
          <string-name>
            <surname>Eiter</surname>
            ,
            <given-names>T.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Fink</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Greco</surname>
            ,
            <given-names>G.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Lembo</surname>
            ,
            <given-names>D.</given-names>
          </string-name>
          :
          <article-title>Repair localization for query answering from inconsistent databases</article-title>
          .
          <source>ACM Trans. Database Syst</source>
          .
          <volume>33</volume>
          (
          <issue>2</issue>
          ) (
          <year>2008</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref13">
        <mixed-citation>
          13.
          <string-name>
            <surname>Eiter</surname>
            ,
            <given-names>T.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Fink</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          , Schu¨ller,
          <string-name>
            <given-names>P.</given-names>
            ,
            <surname>Weinzierl</surname>
          </string-name>
          ,
          <string-name>
            <surname>A.</surname>
          </string-name>
          :
          <article-title>Finding explanations of inconsistency in nonmonotonic multi-context systems</article-title>
          .
          <source>In: KR</source>
          . pp.
          <fpage>329</fpage>
          -
          <lpage>339</lpage>
          (
          <year>2010</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref14">
        <mixed-citation>
          14.
          <string-name>
            <surname>Eiter</surname>
            ,
            <given-names>T.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Fink</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Weinzierl</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          :
          <article-title>Preference-based inconsistency assessment in multi-context systems</article-title>
          .
          <source>In: JELIA</source>
          . pp.
          <fpage>143</fpage>
          -
          <lpage>155</lpage>
          . LNAI (
          <year>2010</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref15">
        <mixed-citation>
          15.
          <string-name>
            <surname>Faber</surname>
            ,
            <given-names>W.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Pfeifer</surname>
            ,
            <given-names>G.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Leone</surname>
          </string-name>
          , N.:
          <article-title>Semantics and complexity of recursive aggregates in answer set programming</article-title>
          .
          <source>Artif. Intell</source>
          .
          <volume>175</volume>
          (
          <issue>1</issue>
          ),
          <fpage>278</fpage>
          -
          <lpage>298</lpage>
          (
          <year>2011</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref16">
        <mixed-citation>
          16.
          <string-name>
            <surname>Fink</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Ghionna</surname>
            ,
            <given-names>L.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Weinzierl</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          :
          <article-title>Relational information exchange and aggregation in multi-context systems</article-title>
          . In: LPNMR (
          <year>2011</year>
          ), to appear.
        </mixed-citation>
      </ref>
      <ref id="ref17">
        <mixed-citation>
          17.
          <string-name>
            <surname>Gelfond</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Lifschitz</surname>
            ,
            <given-names>V.</given-names>
          </string-name>
          :
          <article-title>Classical negation in logic programs</article-title>
          and disjunctive databases.
          <source>New Generation Computing</source>
          <volume>9</volume>
          (
          <issue>3</issue>
          /4),
          <fpage>365</fpage>
          -
          <lpage>386</lpage>
          (
          <year>1991</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref18">
        <mixed-citation>
          18.
          <string-name>
            <surname>Giunchiglia</surname>
            ,
            <given-names>F.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Serafini</surname>
            ,
            <given-names>L.</given-names>
          </string-name>
          :
          <article-title>Multilanguage hierarchical logics, or: How we can do without modal logics</article-title>
          .
          <source>Artificial Intelligence</source>
          <volume>65</volume>
          (
          <issue>1</issue>
          ),
          <fpage>29</fpage>
          -
          <lpage>70</lpage>
          (
          <year>1994</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref19">
        <mixed-citation>
          19.
          <string-name>
            <surname>Greco</surname>
            ,
            <given-names>G.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Greco</surname>
            ,
            <given-names>S.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Zumpano</surname>
          </string-name>
          , E.:
          <article-title>A logical framework for querying and repairing inconsistent databases</article-title>
          .
          <source>IEEE Trans. Knowl. Data Eng</source>
          <volume>15</volume>
          (
          <issue>6</issue>
          ),
          <fpage>1389</fpage>
          -
          <lpage>1408</lpage>
          (
          <year>2003</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref20">
        <mixed-citation>
          20.
          <string-name>
            <surname>Marileo</surname>
            ,
            <given-names>M.C.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Bertossi</surname>
            ,
            <given-names>L.E.</given-names>
          </string-name>
          :
          <article-title>The consistency extractor system: Answer set programs for consistent query answering in databases</article-title>
          .
          <source>Data Knowl. Eng</source>
          <volume>69</volume>
          (
          <issue>6</issue>
          ),
          <fpage>545</fpage>
          -
          <lpage>572</lpage>
          (
          <year>2010</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref21">
        <mixed-citation>
          21.
          <string-name>
            <surname>Martinez</surname>
            ,
            <given-names>M.V.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Parisi</surname>
            ,
            <given-names>F.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Pugliese</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Simari</surname>
            ,
            <given-names>G.I.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Subrahmanian</surname>
            ,
            <given-names>V.S.:</given-names>
          </string-name>
          <article-title>Inconsistency management policies</article-title>
          .
          <source>In: KR</source>
          . pp.
          <fpage>367</fpage>
          -
          <lpage>377</lpage>
          (
          <year>2008</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref22">
        <mixed-citation>
          22.
          <string-name>
            <surname>Subrahmanian</surname>
            ,
            <given-names>V.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Bonatti</surname>
            ,
            <given-names>P.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Dix</surname>
            ,
            <given-names>J.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Eiter</surname>
            ,
            <given-names>T.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Kraus</surname>
            ,
            <given-names>S.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Ozcan</surname>
            ,
            <given-names>F.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Ross</surname>
            ,
            <given-names>R.</given-names>
          </string-name>
          :
          <source>Heterogeneous Agent Systems: Theory and Implementation</source>
          . MIT Press (
          <year>2000</year>
          )
        </mixed-citation>
      </ref>
    </ref-list>
  </back>
</article>