<!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 />
    <article-meta>
      <title-group>
        <article-title>Optimized Construction of Secure Knowledge-Base Views</article-title>
      </title-group>
      <contrib-group>
        <contrib contrib-type="author">
          <string-name>P. A. Bonatti</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>I. M. Petrova</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>L. Sauro</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <aff id="aff0">
          <label>0</label>
          <institution>Dept. of Electrical Engineering and Information Technologies Universita` di Napoli “Federico II”</institution>
        </aff>
      </contrib-group>
      <abstract>
        <p>In this paper we examine a confidentiality framework for constructing safe KB views with respect to the object-level and the meta-level background knowledge that users may exploit to reconstruct secrets. In particular, we will present a first implementation of our framework equipped with several optimization techniques that are assessed experimentally in a concrete e-health scenario.</p>
      </abstract>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>1 Introduction</title>
      <p>
        Recently, the Semantic Web has been increasingly used to encode sensible knowledge
on individuals, companies and public organizations. As reasoning techniques make it
possible to extract implicit information, any access control method that does not deal
with inference fails to ensure privacy [
        <xref ref-type="bibr" rid="ref1 ref10">1, 10</xref>
        ].
      </p>
      <p>
        The most popular security criterion is that the published view of a knowledge base
should not entail any secret sentence [
        <xref ref-type="bibr" rid="ref14 ref3 ref9">3, 9, 14</xref>
        ]. However, such a model guarantees
confidentiality just in the case the filtered knowledge base is the only source of information.
On the contrary, various sources of background knowledge can be exploited to
reconstruct secrets. Background knowledge can be object-level knowledge of the domain of
interest, e.g. auxiliary ontologies, as well as meta knowledge about which kind of
information the knowledge base is expected to represent. For instance, suppose a hospital
allows to know whether a patient has been hospitalized but omits to reveal where, if
she is in the infective disease ward. Since a hospital’s KB is expected to have complete
knowledge about which patients are in which ward, from the fact that John has been
admitted to the hospital and yet he does not appear to be located in any ward, a user can
reconstruct he is a ected by some infection.1
      </p>
      <p>
        To tackle the vulnerabilities arising from these scenarios, [
        <xref ref-type="bibr" rid="ref7">7</xref>
        ] has provided a fully
generic formalization of object-level and meta-level background knowledge, a
confidentiality model which neutralizes the inference-based attacks that exploit such
knowledge, and – since the user’s background knowledge is not directly possessed by the
knowledge engineer – a rule-based methodology to safely approximate it.
      </p>
      <p>
        As the works in [
        <xref ref-type="bibr" rid="ref11 ref12">11, 12</xref>
        ], our model is inspired by the literature on Controlled Query
Evaluation ([
        <xref ref-type="bibr" rid="ref4 ref5 ref6">4, 5, 6</xref>
        ]). However, the two approaches di er in many aspects, including:
(i) [
        <xref ref-type="bibr" rid="ref11 ref12">11, 12</xref>
        ] focus on conjunctive queries, while we focus on subsumption and instance
1 For further details see the analogous Example 1 in [
        <xref ref-type="bibr" rid="ref7">7</xref>
        ]. In general, meta knowledge helps in
preventing attacks to complete knowledge and attacks to the signature.
checking; (ii) in our framework secrets can be both intensional and extensional axioms,
whereas in [
        <xref ref-type="bibr" rid="ref11 ref12">11, 12</xref>
        ] they can only be extensional facts; (iii) although [
        <xref ref-type="bibr" rid="ref11 ref12">11, 12</xref>
        ] can deal
with object-level background knowledge, meta knowledge is not taken into account.
      </p>
      <p>
        Regarding complexity issues, in [
        <xref ref-type="bibr" rid="ref7">7</xref>
        ] it has been shown that by using Horn rules to
encode the user’s meta knowledge, if the underlying DL is tractable, then the
filtering secure function is tractable too.2 Although such promising theoretical properties
suggest that the framework can be practically used, they are still to be assessed
experimentally. In this paper, we present SOVGen, a first prototype suited for a concrete
e-health scenario. In particular, extensional data is encoded in realistic electronic health
records conforming to the standard HL7 v.3 - CDA Rel.2. We approximate the user’s
background knowledge with the SNOMED-CT ontology, together with an ontology
establishing the mapping between SNOMED-CT concepts and ICD-9CM codes that
occur in the records. The user’s meta knowledge, on the other hand, consists of (i)
bridge metarules that permit to identify SNOMED-CT concepts starting from the
specific encoding of the records required by CDA, as well as (ii) metarules that establish
relationships between medications, diseases, medical procedures, etc.
      </p>
      <p>
        Sec. 2 will provide a general overview on the theoretical model; due to space
limitations we refer to [
        <xref ref-type="bibr" rid="ref7">7</xref>
        ] for technical proofs. In Sec. 3 we will describe the algorithm
underlying SOVGen together with its optimizations. Sections 4 and 5 describe the
experimental settings and performance analysis, respectively. Sec. 6 concludes the paper.
2
      </p>
    </sec>
    <sec id="sec-2">
      <title>The Model</title>
      <p>
        We assume the reader to be familiar with description logics, and refer to [
        <xref ref-type="bibr" rid="ref2">2</xref>
        ] for all
definitions and results. We assume a fixed, denumerable signature , specifying the names
of concepts, roles, and individuals, and a reference logical language L is generated from
by the grammar of a DL. Unless stated otherwise, by axioms we mean members of
L; a knowledge base is any finite subset of L. The notion of logical consequence is the
classical one; for all K L, the logical consequences of K will be denoted by Cn(K)
(K Cn(K) L).
      </p>
      <p>Let KB be a knowledge base and S L a set of secrecies. Generally speaking,
the confidentiality of S is preserved if a user cannot expect to discover any secret by
querying the system. A possible attempt to protect the secrets is to use a view KB0 which
is a maximal subset of KB that entails no secret, Cn(KB0) \ S = ;.</p>
      <p>Unfortunately, in case some background knowledge is available to the user, this
mechanism could not ensure confidentiality. Frequently, part of the domain knowledge
is not axiomatized in KB. In such cases a user can import some external ontology or
RDF repository BK to infer more than she is allowed to. Moreover, she may possess
some meta knowledge about KB. For instance, a hospital’s KB is expected to have
complete knowledge about its patients; a company’s KB is likely to encode complete
information about its employees, etc. Such meta knowledge can be represented epistemically
as a set of possible knowledge bases PKB, queries can be then used to narrow PKB until
the user is able to reconstruct a secret.
2 Non-Horn metarules can be safely approximated with Horn metarules; the price to pay is a
loss of cooperativeness, i.e. a reduction of the information available to the user.</p>
      <p>Summarizing, we introduce a general confidentiality model which takes into
account object-level and meta-level background knowledge.</p>
      <p>
        Definition 1 ([
        <xref ref-type="bibr" rid="ref7">7</xref>
        ]). A bk-model is a tuple M = hKB; f ; S ; PKB; BKi where KB is a
knowledge base, f : }(L) ! }(L) is a filtering function mapping each knowledge base
K on a view f (K) Cn(K), S L is a set of secrecies, BK L is a set of axioms
encoding the users’ object-level knowledge, PKB }(L) is a set of possible knowledge
bases encoding users’ meta knowledge.
      </p>
      <p>The view of KB released to a user is f (KB). Intuitively, f is secure if for each secret s
there exists a possible knowledge base K 2 PKB such that (i) KB and K have the same
observable behavior, that is, as far as the user knows, the knowledge base might be K,
and (ii) K and the object-level background knowledge BK do not su ce to entail s.
Definition 2. A filtering function f is secure (w.r.t. M) i for all s 2 S , there exists
K 2 PKB such that 1) f (K) = f (KB) and 2) s &lt; Cn(K [ BK).</p>
      <p>In the rest of the paper we focus on concrete scenarios where all the components of
bk-models are finite. Moreover, we tacitly assume that no secret is violated a priori, that
is, for all secrets s 2 S there exists K 2 PKB such that s &lt; Cn(K [ BK).3</p>
      <p>Clearly, Definition 2 just formalizes our desiderata, consequently the next step is to
exhibit a secure filtering function. This function is formulated as an iterative process
where for each axiom that, according to the user’s meta knowledge, may possibly occur
in the knowledge base a censor decides whether it should be obfuscated to protect
confidentiality. The iterative construction manipulates pairs hX+; X i 2 }(L) }(L)
that represent a meta constraint on possible knowledge bases: we say that a knowledge
base K satisfies hX+; X i i K entails all the sentences in X+ and none of those in X
(formally, Cn(K) X+ and Cn(K) \ X = ;).</p>
      <p>Let PAX (the set of possible axioms) be the set of all axioms occurring in at least one
possible knowledge base, i.e. PAX = SK02PKB K0. Let = jPAXj and 1; : : : ; i; : : : ;
be any enumeration of PAX. The secure view construction for a knowledge base K in a
bk-model M consists of the following, inductively defined sequence of pairs hKi+; Ki ii 0 :
– hK0+; K0 i = h;; ;i , and for all 1 i &lt; , hKi++1; Ki+1i is defined as follows:
if censorM(Ki+; Ki ; i+1) = true then let hKi++1; Ki+1i = hKi+; Ki i ;
if censorM(Ki+; Ki ; i+1) = f alse and K j= i+1 then
hKi++1; Ki+1i = hKi+ [ f i+1g; Ki i;
otherwise let hKi++1; Ki+1i = hKi+; Ki [ f i+1gi .</p>
      <p>Finally, let K+ = Si Ki+, K = Si Ki , and fM(K) = K+ : The iterative construction
aims at finding maximal sets K+ and K that (i) partly describe what does / does not
follow from K (as K satisfies hK+; K i by construction), and (ii) do not trigger the
censor (the sentences i+1 that trigger the censor are included neither in K+ nor in K ).</p>
      <p>In order to define the censor we need an auxiliary definition that captures all the
consequences of the background knowledge BK and the meta knowledge PKB refined
by a constraint hX+; X i. Let CnM(X+; X ) be the set of all axioms 2 L such that
for all K0 2 PKB such that K0 satisfies hX+; X i;
2 Cn(K0 [ BK) :
(1)
3 Conversely, no filtering function can conceal a secret that is already known by the user.</p>
      <p>Now the censor is defined as follows. For all X+; X
L and</p>
      <p>2 L,</p>
      <sec id="sec-2-1">
        <title>8 true if there exists s 2 S s.t. either s 2 CnM(X+ [ f g; X )</title>
        <p>&gt;
censorM(X+; X ; ) = &lt;&gt;&gt;&gt; or s 2 CnM(X+; X [ f g);
&gt;&gt;: false otherwise.
(2)
In other words, the censor checks whether telling either that is derivable or not to a
user – aware that the knowledge base satisfies hX+; X i – restricts the set of possible
knowledge bases enough to conclude that a secret s is entailed by the knowledge base
enriched with the background knowledge BK.</p>
        <p>
          Note that the censor obfuscates i+1 if any of its possible answers entail a secret,
independently of the actual contents of K (the possible answers “yes” and “no”
correspond to conditions s 2 CnM(X+ [ f g; X ) and s 2 CnM(X+; X [ f g), respectively).
This way, roughly speaking, the knowledge bases that entail s are given the same
observable behavior as those that don’t. Thm 1 in [
          <xref ref-type="bibr" rid="ref7">7</xref>
          ] shows that fM is secure w.r.t. M.
Remark 1. Observe that our method is inspired by CQE based on lies and/or refusals
([
          <xref ref-type="bibr" rid="ref4 ref5 ref6">4, 5, 6</xref>
          ] etc). Technically we use lies, because rejected queries are not explicitly
marked. However, our censor resembles the classical refusal censor, so the properties
of fM are not subsumed by any of the classical CQE methods. For example (unlike
the CQE approaches that use lies), fM(K B) encodes only correct knowledge (i.e.
entailed by KB), and it is secure whenever users do not initially know any secret (while
lies-based CQE further require that no disjunction of secrets should be known a priori).
Unlike the refusal method, fM can handle cover stories because users are not told that
some queries are obfuscated. As an additional advantage, our method needs not to adapt
existing engines to handle nonstandard answers like mum. Finally, the CQE approaches
do not deal specifically with DL knowledge bases, nor meta knowledge.
        </p>
        <p>Of course, the actual confidentiality of a filtering f (KB) depends on a careful
definition of the user’s background knowledge, that is, PKB and BK. If background
knowledge is not exactly known by the knowledge engineer then it can be safely
overestimated. More background knowledge means larger BK and smaller PKB, which leads to
the following comparison relation k over bk-models:
Definition 3. Let M = hKB; f ; S ; PKB; BKi and M0 = hKB0; f 0; S 0; PKB0; BK0i be two
bk-models, we write M k M0 i KB = KB0, f = f 0, S = S 0, PKB PKB0 and
BK BK0.</p>
        <p>
          Then, it is easy to see that M0 is a safe approximation of M, that is if f is secure w.r.t.
M0, then it is also secure w.r.t. M (Proposition 2, [
          <xref ref-type="bibr" rid="ref7">7</xref>
          ]).
        </p>
        <p>Consequently, a generic advice for estimating BK consists in (i) including public
ontologies and triple stores formalizing relevant knowledge and (ii) modeling as completely
as possible the integrity constraints satisfied by the data, as well as role domain and
range restrictions and disjointness constraints.</p>
        <p>While BK can be represented with standard languages (e.g. OWL, RDF, etc.), user’s
meta knowledge requires an ad-hoc language for defining PKB. Here we express PKB
as the set of all theories that are contained in a given set of possible axioms PAX and
satisfy a finite set MR of metarules like:
1; : : : ; n ) 1 j : : : j m
(n
where all i and j are in L (1 i n; 1 j m). For all metarules r, let body(r) =
f 1; : : : ; ng and head(r) = f 1; : : : ; mg.</p>
        <p>Informally, (3) means that if KB entails 1; : : : ; n then KB entails also some of
1; : : : ; m. Sets of similar metarules can be succintly specified using metavariables;
they can be placed wherever individual constants may occur, that is, as arguments of
assertions, and in nominals. A metarule with such variables abbreviates the set of its
ground instantiations: Given a K L, let groundK (MR) be the ground instantiation of
MR where metavariables are uniformly replaced by the individual constants occurring
in K in all possible ways.</p>
        <p>A set of axioms K L satisfies a ground metarule r if either body(r) * Cn(K) or
head(r) \ Cn(K) , ;. In this case we write K j=m r. Moreover, if K satisfies all the
metarules in groundK (MR) then we write K j=m MR. Therefore the formal definition of
PKB now becomes:</p>
        <p>PKB = fK j K</p>
        <p>PAX ^ K j=m MRg :
(4)
In this paper, we assume that MR consists of Horn metarules (jhead(r)j 1) and PAX =
KB [ Sr2groundKB(MR) head(r). Under such hypothesis, it can be shown that if all the
axioms in KB, PKB, BK, and S belong to a tractable DL, and the number of distinct
variables in MR is bounded by a constant, then fM can be calculated in polynomial
time.
3</p>
      </sec>
    </sec>
    <sec id="sec-3">
      <title>Implementation overview</title>
      <p>In this section we introduce SOVGen, the prototypical implementation of the
confidentiality model illustrated in Section 2 based on Horn metarules. By standard logic
programming techniques, a minimal K PAX satisfying the set of metarules and the
constraints K+ can be obtained with the following polynomial construction:
K0 = K+ ;</p>
      <p>Ki+1 = Ki [
[f head(r) j r 2 groundKi (MR) ^ body(r)</p>
      <p>
        Cn(Ki) g
It can be proved that the sequence limit KjPAXj satisfies hK+; K i as well if KjPAXj does
not entail an axiom in K . Then, for all s 2 S , s activates the censor i s is a
consequence of KjPAXj [ BK. For further details refer to [
        <xref ref-type="bibr" rid="ref7">7</xref>
        ].
      </p>
      <p>Algorithm 1 represents the abstract algorithm underlying SOVGen. The sets MM
and MG constitute a partition of MR based on the metarules’ type (ground or containing
metavariables). Iterating over the axioms 2 PAX (lines 6-25), at each step K
collects all the axioms of PAX that does not contribute to the entailment of secrets. The
repeat-until loop (lines 9-17) computes the deductive closure K0 of K under the set of
metarules MR. In particular, for each ground metarule (lines 10-13) we evaluate a
conjunctive query (encoded in line 11) in order to check if m body is satisfied by the current
K0 . Similarly, for each metarule containing metavariables (lines 14-16), we obtain all
possible bindings for the metavariables in the body of m by means of a conjunctive
query evaluation (line 15). The sequence of steps described above is iterated until a
fixpoint is reached (line 17). At this point the condition Cn(K0 ) \ K j= ; is verified (line
18). It is now possible to determine the value of the censor for . We first check that
no secret is entailed from the minimal K (line 19) enreached with BK. Finally, we can
safely include in the view only if it is entailed by KB (line 21). Otherwise, the set K
forall m 2 MM do
forall (a0; : : : ; an) j K0 j= body(m; [X0=a0; : : : ; Xn=an]) do</p>
      <p>K0 K0 [ fhead(m; [X0=a0; : : : ; Xn=an])g;
is updated (line 25). Note that, due to the monotonicity of reasoning, at each iteration
we can safely remove from MG all the ground rules already satisfied at the previous
iterations (lines 13, 23).</p>
      <p>A careful analysis of the algorithm immediately points out: (1) the opportunity to
apply a process of modularization designed to reduce the size of very large background
knowledge bases (such as SNOMED-CT). In fact, many of the axioms in a large BK
are reasonably expected to be irrelevant to the given view; (2) the need of techniques
for e ective conjunctive query evaluation.4</p>
      <p>
        With respect to point (1), we investigate the use of module extractors [
        <xref ref-type="bibr" rid="ref16 ref17">17, 16</xref>
        ] on
the background knowledge bases in order to make reasoning focus on relevant
knowledge only. Experimental results show that the modules extracted are on average two
4 Straightforward evaluation of metarules in the presence of metavariables with an OWL
reasoner would need to consider all possible ways of uniformly replacing metavariables by
individual constants occurring in the ontology.
or three orders of magnitude smaller than the initial BKs which drastically improves
performance.
      </p>
      <p>
        With respect to point (2), the presence of technologies that permit native
conjunctive query evaluation reveals fundamental to achieve e cient framework
implementation. Nowadays SPARQL5, constitute a de facto standard when it comes to conjunctive
query answering. It has been recently extended with the OWL Direct Semantics
Entailment Regime in order to permit reasoning over OWL ontologies. Unfortunately, only
few tools provide support to this new semantics. Among those our choice fell on Apache
Jena Semantic Web Toolkit6 (for more information and motivations see [
        <xref ref-type="bibr" rid="ref8">8</xref>
        ]). A valid
alternative to the consolidated SPARQL engines proves to be OWL-BGP7, a relatively
new framework for parsing SPARQL basic graph patterns (BGPs) to OWL object
representation and their assessment under the OWL Direct Semantics Entailment Regime.
OWL-BGP incorporates various optimization techniques [
        <xref ref-type="bibr" rid="ref15">15</xref>
        ] including query rewriting
and a cost-based model8 for determining the order in which conjunctive query atoms
are evaluated. As we will see in Section 5 the performance of the query evaluation
module of SOVGen is unacceptable when Jena is used and not quite satisfactory when
OWL-BGP is adopted9. As an alternative to the above frameworks for conjunctive query
evaluation we propose an hoc module, called Metarule Evaluation Engine (MEE), that
aims to take advantage of the specific nature of the Horn metarules and incremental
reasoning techniques of ELK [
        <xref ref-type="bibr" rid="ref13">13</xref>
        ].
      </p>
      <p>Metarule Evaluation Engine (MEE). The evaluation algorithm is based on direct calls
to an incremental reasoner. In the following we provide a brief description of the
procedure employed for the evaluation of the di erent types of metarules.</p>
      <p>The evaluation of a ground metarule r requires checking that all the axioms 1; : : : ; n
in body(r) are entailed by K0 . The algorithm takes advantage of short circuit evaluation
techniques that permit to end the evaluation as soon as K0 6j= i and memoization of the
atoms i satisfied in previous iterations in order to avoid their re-evaluation.</p>
      <p>The evaluation of metarules with metavariables, on the other hand, comprises a
preprocession step that partition the atoms 1; : : : ; n in the metarule body in sets of
connected components. Within a component, atoms (that in this case can be viewed as
axiom templates) share common metavariables, while there are no metavariables shared
between atoms belonging to di erent connected components. Evaluating together
templates belonging to non-related components increases unnecessarily the amount of
intermediate results, whereas it is su cient to combine the results for the single
components. Furthermore, for some types of templates, such as C(X), it is possible to retrieve
the solutions directly from the reasoner, instead of verifying the satisfiability of each
compatible mapping for the metavariable X. Although this can trigger some internal
controls, most of the methods of reasoners are highly optimized. Other more complex
5 http://www.w3.org/TR/sparql11-overview/
6 http://jena.apache.org/
7 https://code.google.com/p/owl-bgp/
8 The cost calculation is based on information about instances of concepts and roles extrapolated
from an abstract model built by reasoners that implement Tableaux reasoning algorithms.
9 Note that evaluation of ground metarules results in SPARQL ASK query (line11 of Alg.1),
while evaluation of metarules with metavariables in SPARQL SELECT query (line15 of Alg.1).
templates, like the property assertions R(X; Y), do not allow the evaluation via dedicated
reasoning tasks and require satisfiability check for each possible instantiation.
Consequently, within each connected component, the evaluation is performed considering first
all atoms of the type C(X) for the purpose of restricting as much as possible the
compatible mappings for the metavariables, then the atoms R(X; Y) (X or Y may possibly be
an individual constant) are considered.</p>
      <p>Note that, unlike the previous engines, MEE does not need to initialize the inference
model on each step of the repeat-until loop. In fact, the queries are evaluated through a
number of calls to the ELK reasoner, that make it possible to exploit the characteristics
of incremental classification.
4</p>
    </sec>
    <sec id="sec-4">
      <title>Experimental Settings</title>
      <p>In this section we present synthetic test cases which have been specifically designed to
simulate the employment of SOVGen in a e-health scenario. In particular, each test case
represents the encoding of sensitive data in a CDA-compliant electronic health record.10</p>
      <p>According to the theoretical framework each test case comprises four di erent
components: the ontology KB that contains confidential data to be protected; an ontology
MR encoding the user meta knowledge with a set of metarules; a set S of secrets; a
series of ontologies representing the user’s object-level background knowledge BK.
KB generation. KB is generated as a set of assertions instantiating the PS ontology. PS
encodes a patient summary clinical document following the HL7 Implementation Guide
for CDA Rel.2 Level 3: Patient Summary. As it can be seen in Figure 1, PS currently
provide a support for encoding information about (i) history of assumed medications;
(ii) clinical problem list including diagnosis, diagnostic hypothesis and clinical
findings; (iii) history of a family member disease; (iv) list of the procedures the patient has
undergone; (v) list of relevant diagnostic tests and laboratory data. Note that,
according to the CDA standards a disease in the PS ontology is represented by a ICD-9CM
code, while pharmaceutical products and procedures are represented by a SNOMED CT
codes. For example, &lt;code code=”64572001” codeSystemName=”SNOMED CT”/&gt; stands
for an instance of the SNOMED CT concept Disease (SCT 64572001). The type of
sections to be generated are randomly chosen among those mentioned above. A disease
(resp. product, procedure, test) code to associate to the entries is chosen as a random
leaf of the corresponding Disease (resp. Pharmaceutical/biologic product, Procedure by
site, Measurement procedure, Imaging) concept of the SNOMED CT ontology. In case
a disease code is needed, the ICD-9CM code corresponding to the SNOMED CT one
is retrieved and the equivalence is added to a background knowledge ontology named
EQIV-RL.</p>
      <p>Metarule generation. The knowledge encoded in KB gives rise to several possible
types of metarules. Bridge metarules associate a ICD-9CM/SNOMED CT code to the
concept in the respective ontology. For instance,</p>
      <p>CD(C); dtpCode(C; 64572001); dtpCodeSystem(C; SNOMED-CT) ) SCT 64572001(C)
10 Clinical Document Architecture (CDA) is a standard for information exchange, based on the</p>
      <p>Health Level 7 Reference Information Model.
makes it possible to derive that a code instance C is in fact an instance of the Disease
concept in SNOMED CT.</p>
      <p>The second type of metarules concerns the pharmaceutical products. The presence
of a drug in the history of medication use implies that the patient su ers (certainly or
with a great probability) from a specific pathology or has undertaken a specific
procedure. Consider the following example of metarule which says that the presence of a
medicine with active ingredient Phenytoin (SCT 40556005) indicates that the patient
su ers from some kind of Epilepsy (SCT 84757006):</p>
      <p>Patient(P); SubstanceAdministration(S A); Consumable(C); hasConsumable(S A; C);
ManufacturedProduct(MP); hasManufacturedProduct(C; MP); Material(M);
hasManufacturedMaterial(MP; M); SCT 40556005(CD); hasCode(M; CD)
) 9su er:SCT 84757006(P)
The third type of metarules concerns the problems section. In particular the presence of
a diagnosis (resp. diagnostic hypothesis) indicates that the patient su er (resp. possibly
su er) a certain pathology.</p>
      <p>Other types of metarules apply to the family history – e.g. a patient could be subject
to a family members’ disease – and the procedures section. For instance, the metarule</p>
      <sec id="sec-4-1">
        <title>Patient(P); Procedure(I); SCT 77465005(C); hasCode(I; C) ) subject(P; C)</title>
        <p>allows to entail that the presence of an organ transplantation (SCT 77465005) in the
procedure section indicates that the patient is subject to transplantation.</p>
        <p>Note that the generation of MR is not completely random for a part of the metarules.
In order to obtain a nontrivial reasoning, during the KB generation, together with the
creation of a section’ entry is also created one or more corresponding bridge metarules
and a metarule corresponding to the section in question. A second part of metarules
are constructed by randomly selecting appropriate SNOMED CT concepts as needed.
The adoption of such approach guarantees that al least part of metarules are actually
fired during the secure ontology view generation. Furthermore, observe that the there
are actually two levels of metarules, the bridge metarules constitute a precondition for
the activation of the others.</p>
        <p>Secrets generation. The ontology S is randomly generated as a set of assertions of the
types:
9su er:X(p)</p>
      </sec>
      <sec id="sec-4-2">
        <title>9possiblySu er:X(p)</title>
      </sec>
      <sec id="sec-4-3">
        <title>9possibleSubject:X(p)</title>
      </sec>
      <sec id="sec-4-4">
        <title>9subject:Y(p)</title>
        <p>where X (resp. Y) is chosen as a random subconcept of the Disease (resp. Procedure)
concept of the SNOMED CT ontology.</p>
        <p>Background knowledge. The background knowledge BK is approximated by means
of the PS, SNOMED-CT and the previously mentioned EQIV-RL ontologies.
5</p>
      </sec>
    </sec>
    <sec id="sec-5">
      <title>Performance Analysis</title>
      <p>In this section we present a performance analysis of SOVGen. Scalability evaluations
have been carried out on synthetic test cases as described in Section 4. The size of KB
is given by the parameter KB-size as the number of assertions occurring in the ontology.
Then, the size of MR, MR-rate, is the ratio between the number of metarules and the
number of assertions in KB. Finally, the size of S is determined by the parameter S-rate
that specifies the ratio jS j=jK Bj.</p>
      <p>The experiments were performed on an Intel Core i7 2,5GHz laptop with 16GB and
OS X 10.10.1, using Java 1.7 configured with 8GB RAM and 4GB stack space. Each
reported value is the average execution time of five runs over five di erent ontologies.
Note that given the amount of background knowledge (consider that SNOMED-CT
describes about 300K concepts) the use of module extraction techniques improves the
computation time of two–three orders of magnitude at a cost of about 30 sec of
overhead.</p>
      <p>In Figure 2, the left (resp. right) column shows the experimental results obtained by
using MEE (resp. OWL-BGP) to evaluate metarules – no result for Jena is reported as
the execution time on all the test cases exceeded 1 hour time-out. Figures 2(a) and 2(b)
report the execution time as the amount of secrets grows. Both MR-rate and KB-size are
fixed, respectively to 10% and 200 assertions. Note that, MEE outperforms OWL-BGP
of 1–2 orders of magnitude. Figures 2(c) and 2(d) show the impact of MR-rate when
KB-size is fixed to 200 and S-size to 10%. Here, MEE runs about 10 times faster than
OWL-BGP. Finally, Figures 2(e) and 2(f) illustrate the way the execution time changes
as the the size of KB increases. Again MEE is 102 faster than OWL-BGP.
6</p>
    </sec>
    <sec id="sec-6">
      <title>Conclusions</title>
      <p>
        In [
        <xref ref-type="bibr" rid="ref7">7</xref>
        ] a novel confidentiality model has been introduced which adapts Controlled Query
Evaluation to the context of Description Logics, and extends it by taking into account
object-level and meta background knowledge. Here, we have presented SOVGen, a first
implementation of this methodology that has been specialized to deal with a concrete
(a) KB-size=200, MR-rate=10%
      </p>
      <p>(b) KB-size=200, MR-rate=10%
(c) KB-size=200, S-rate=10%
(d) KB-size=200, S-rate=10%
(e) MR-rate=10%, S-rate=25%
(f) MR-rate=10%, S-rate=25%
Fig. 2. Secure view construction time with MEE e OWL-BGP on variation of the parameters
S-rate, MR-rate and KB-rate
e-health application. In order to maximize performance, we have compared di erent
reasoning tools and designed several optimization techniques. Then, we assessed
SOVGen experimentally by using realistic electronic health records that refer to
SNOMEDCT concepts, and Horn rules to represent meta knowledge. In particular, we observed
that module extraction techniques and a suitable, ad-hoc metarule evaluation engine
– which intensively exploit ELK incremental reasoning – largely outperform general
conjunctive query evaluation engines.</p>
      <p>Considering that secure views are constructed o -line – so that no overhead is
placed on user queries – performance analysis shows that SOVGen is close to meet
practical use in this application scenario. In future work, we aim at improving the
system with new optimizations, and extending it to general rules.</p>
    </sec>
  </body>
  <back>
    <ref-list>
      <ref id="ref1">
        <mixed-citation>
          [1]
          <string-name>
            <given-names>F.</given-names>
            <surname>Abel</surname>
          </string-name>
          ,
          <string-name>
            <given-names>J. L. D.</given-names>
            <surname>Coi</surname>
          </string-name>
          ,
          <string-name>
            <given-names>N.</given-names>
            <surname>Henze</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A. W.</given-names>
            <surname>Koesling</surname>
          </string-name>
          ,
          <string-name>
            <given-names>D.</given-names>
            <surname>Krause</surname>
          </string-name>
          , and
          <string-name>
            <given-names>D.</given-names>
            <surname>Olmedilla</surname>
          </string-name>
          .
          <article-title>Enabling advanced and context-dependent access control in RDF stores</article-title>
          . In K. Aberer et al., editor,
          <source>The Semantic Web, 6th International Semantic Web Conference, 2nd Asian Semantic Web Conference</source>
          ,
          <string-name>
            <surname>ISWC</surname>
          </string-name>
          <year>2007</year>
          +
          <article-title>ASWC 2007, Busan</article-title>
          , Korea,
          <source>November 11-15</source>
          ,
          <year>2007</year>
          ., volume
          <volume>4825</volume>
          <source>of LNCS</source>
          , pages
          <fpage>1</fpage>
          -
          <lpage>14</lpage>
          . Springer,
          <year>2007</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref2">
        <mixed-citation>
          [2]
          <string-name>
            <given-names>F.</given-names>
            <surname>Baader</surname>
          </string-name>
          ,
          <string-name>
            <given-names>D.</given-names>
            <surname>Calvanese</surname>
          </string-name>
          ,
          <string-name>
            <given-names>D. L.</given-names>
            <surname>McGuinness</surname>
          </string-name>
          ,
          <string-name>
            <given-names>D.</given-names>
            <surname>Nardi</surname>
          </string-name>
          , and
          <string-name>
            <given-names>P. F.</given-names>
            <surname>Patel-</surname>
          </string-name>
          Schneider, editors.
          <source>The Description Logic Handbook: Theory</source>
          , Implementation, and
          <string-name>
            <surname>Applications</surname>
          </string-name>
          . Cambridge University Press,
          <year>2003</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref3">
        <mixed-citation>
          [3]
          <string-name>
            <given-names>F.</given-names>
            <surname>Baader</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Knechtel</surname>
          </string-name>
          , and
          <string-name>
            <given-names>R.</given-names>
            <surname>Pen</surname>
          </string-name>
          <article-title>˜aloza. A generic approach for large-scale ontological reasoning in the presence of access restrictions to the ontology's axioms</article-title>
          .
          <source>In International Semantic Web Conference</source>
          , pages
          <fpage>49</fpage>
          -
          <lpage>64</lpage>
          ,
          <year>2009</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref4">
        <mixed-citation>
          [4]
          <string-name>
            <given-names>J.</given-names>
            <surname>Biskup</surname>
          </string-name>
          and
          <string-name>
            <given-names>P. A.</given-names>
            <surname>Bonatti</surname>
          </string-name>
          .
          <article-title>Lying versus refusal for known potential secrets</article-title>
          .
          <source>Data Knowl. Eng.</source>
          ,
          <volume>38</volume>
          (
          <issue>2</issue>
          ):
          <fpage>199</fpage>
          -
          <lpage>222</lpage>
          ,
          <year>2001</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref5">
        <mixed-citation>
          [5]
          <string-name>
            <given-names>J.</given-names>
            <surname>Biskup</surname>
          </string-name>
          and
          <string-name>
            <given-names>P. A.</given-names>
            <surname>Bonatti</surname>
          </string-name>
          .
          <article-title>Controlled query evaluation for enforcing confidentiality in complete information systems</article-title>
          .
          <source>Int. J. Inf. Sec.</source>
          ,
          <volume>3</volume>
          (
          <issue>1</issue>
          ):
          <fpage>14</fpage>
          -
          <lpage>27</lpage>
          ,
          <year>2004</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref6">
        <mixed-citation>
          [6]
          <string-name>
            <given-names>J.</given-names>
            <surname>Biskup</surname>
          </string-name>
          and
          <string-name>
            <given-names>P. A.</given-names>
            <surname>Bonatti</surname>
          </string-name>
          .
          <article-title>Controlled query evaluation for known policies by combining lying and refusal</article-title>
          . Ann. Math. Artif. Intell.,
          <volume>40</volume>
          (
          <issue>1-2</issue>
          ):
          <fpage>37</fpage>
          -
          <lpage>62</lpage>
          ,
          <year>2004</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref7">
        <mixed-citation>
          [7]
          <string-name>
            <given-names>P. A.</given-names>
            <surname>Bonatti</surname>
          </string-name>
          and
          <string-name>
            <given-names>L.</given-names>
            <surname>Sauro</surname>
          </string-name>
          .
          <article-title>A confidentiality model for ontologies</article-title>
          . In H. Alani,
          <string-name>
            <given-names>L.</given-names>
            <surname>Kagal</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A.</given-names>
            <surname>Fokoue</surname>
          </string-name>
          ,
          <string-name>
            <given-names>P. T.</given-names>
            <surname>Groth</surname>
          </string-name>
          ,
          <string-name>
            <given-names>C.</given-names>
            <surname>Biemann</surname>
          </string-name>
          ,
          <string-name>
            <given-names>J. X.</given-names>
            <surname>Parreira</surname>
          </string-name>
          ,
          <string-name>
            <given-names>L.</given-names>
            <surname>Aroyo</surname>
          </string-name>
          ,
          <string-name>
            <given-names>N. F.</given-names>
            <surname>Noy</surname>
          </string-name>
          ,
          <string-name>
            <given-names>C.</given-names>
            <surname>Welty</surname>
          </string-name>
          ,
          <article-title>and</article-title>
          K. Janowicz, editors,
          <source>The Semantic Web - ISWC 2013 - 12th International Semantic Web Conference</source>
          , Sydney,
          <string-name>
            <surname>NSW</surname>
          </string-name>
          , Australia,
          <source>October 21-25</source>
          ,
          <year>2013</year>
          , Proceedings,
          <string-name>
            <surname>Part</surname>
            <given-names>I</given-names>
          </string-name>
          , volume
          <volume>8218</volume>
          of Lecture Notes in Computer Science, pages
          <fpage>17</fpage>
          -
          <lpage>32</lpage>
          . Springer,
          <year>2013</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref8">
        <mixed-citation>
          [8]
          <string-name>
            <given-names>P. A.</given-names>
            <surname>Bonatti</surname>
          </string-name>
          ,
          <string-name>
            <given-names>L.</given-names>
            <surname>Sauro</surname>
          </string-name>
          ,
          <string-name>
            <surname>and I. Petrova.</surname>
          </string-name>
          <article-title>A mechanism for ontology confidentiality</article-title>
          . In L.
          <string-name>
            <surname>Giordano</surname>
            ,
            <given-names>V.</given-names>
          </string-name>
          <string-name>
            <surname>Gliozzi</surname>
          </string-name>
          , and G. L. Pozzato, editors,
          <source>Proceedings of the 29th Italian Conference on Computational Logic</source>
          , Torino, Italy, June 16-18,
          <year>2014</year>
          ., volume
          <volume>1195</volume>
          <source>of CEUR Workshop Proceedings</source>
          , pages
          <fpage>147</fpage>
          -
          <lpage>161</lpage>
          . CEUR-WS.org,
          <year>2014</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref9">
        <mixed-citation>
          [9]
          <string-name>
            <surname>Eldora</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          <string-name>
            <surname>Knechtel</surname>
            , and
            <given-names>R.</given-names>
          </string-name>
          <string-name>
            <surname>Pen</surname>
          </string-name>
          <article-title>˜aloza. Correcting access restrictions to a consequence more flexibly</article-title>
          . In R. Rosati,
          <string-name>
            <given-names>S.</given-names>
            <surname>Rudolph</surname>
          </string-name>
          , and M. Zakharyaschev, editors,
          <source>Description Logics</source>
          , volume
          <volume>745</volume>
          <source>of CEUR Workshop Proceedings. CEURWS.org</source>
          ,
          <year>2011</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref10">
        <mixed-citation>
          [10]
          <string-name>
            <given-names>G.</given-names>
            <surname>Flouris</surname>
          </string-name>
          , I. Fundulaki,
          <string-name>
            <given-names>M.</given-names>
            <surname>Michou</surname>
          </string-name>
          , and
          <string-name>
            <given-names>G.</given-names>
            <surname>Antoniou</surname>
          </string-name>
          .
          <article-title>Controlling access to RDF graphs</article-title>
          . In A.
          <string-name>
            <surname>-J. Berre</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          <article-title>Go´mez-Pe´rez, K. Tutschku</article-title>
          , and D. Fensel, editors,
          <source>FIS</source>
          , volume
          <volume>6369</volume>
          of Lecture Notes in Computer Science, pages
          <fpage>107</fpage>
          -
          <lpage>117</lpage>
          . Springer,
          <year>2010</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref11">
        <mixed-citation>
          [11]
          <string-name>
            <given-names>B. C.</given-names>
            <surname>Grau</surname>
          </string-name>
          ,
          <string-name>
            <given-names>E.</given-names>
            <surname>Kharlamov</surname>
          </string-name>
          ,
          <string-name>
            <given-names>E. V.</given-names>
            <surname>Kostylev</surname>
          </string-name>
          , and
          <string-name>
            <given-names>D.</given-names>
            <surname>Zheleznyakov</surname>
          </string-name>
          .
          <article-title>Controlled query evaluation over OWL 2 RL ontologies</article-title>
          . In H. Alani,
          <string-name>
            <given-names>L.</given-names>
            <surname>Kagal</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A.</given-names>
            <surname>Fokoue</surname>
          </string-name>
          ,
          <string-name>
            <given-names>P. T.</given-names>
            <surname>Groth</surname>
          </string-name>
          ,
          <string-name>
            <given-names>C.</given-names>
            <surname>Biemann</surname>
          </string-name>
          ,
          <string-name>
            <given-names>J. X.</given-names>
            <surname>Parreira</surname>
          </string-name>
          ,
          <string-name>
            <given-names>L.</given-names>
            <surname>Aroyo</surname>
          </string-name>
          ,
          <string-name>
            <given-names>N. F.</given-names>
            <surname>Noy</surname>
          </string-name>
          ,
          <string-name>
            <given-names>C.</given-names>
            <surname>Welty</surname>
          </string-name>
          ,
          <article-title>and</article-title>
          K. Janowicz, editors,
          <source>The Semantic Web - ISWC 2013 - 12th International Semantic Web Conference</source>
          , Sydney,
          <string-name>
            <surname>NSW</surname>
          </string-name>
          , Australia,
          <source>October 21-25</source>
          ,
          <year>2013</year>
          , Proceedings,
          <string-name>
            <surname>Part</surname>
            <given-names>I</given-names>
          </string-name>
          , volume
          <volume>8218</volume>
          of Lecture Notes in Computer Science, pages
          <fpage>49</fpage>
          -
          <lpage>65</lpage>
          . Springer,
          <year>2013</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref12">
        <mixed-citation>
          [12]
          <string-name>
            <given-names>B. C.</given-names>
            <surname>Grau</surname>
          </string-name>
          ,
          <string-name>
            <given-names>E.</given-names>
            <surname>Kharlamov</surname>
          </string-name>
          ,
          <string-name>
            <given-names>E. V.</given-names>
            <surname>Kostylev</surname>
          </string-name>
          , and
          <string-name>
            <given-names>D.</given-names>
            <surname>Zheleznyakov</surname>
          </string-name>
          .
          <article-title>Controlled query evaluation over lightweight ontologies</article-title>
          . In M. Bienvenu,
          <string-name>
            <given-names>M.</given-names>
            <surname>Ortiz</surname>
          </string-name>
          ,
          <string-name>
            <given-names>R.</given-names>
            <surname>Rosati</surname>
          </string-name>
          , and M. Simkus, editors,
          <source>Informal Proceedings of the 27th International Workshop on Description Logics</source>
          , Vienna, Austria,
          <source>July 17-20</source>
          ,
          <year>2014</year>
          ., volume
          <volume>1193</volume>
          <source>of CEUR Workshop Proceedings</source>
          , pages
          <fpage>141</fpage>
          -
          <lpage>152</lpage>
          . CEUR-WS.org,
          <year>2014</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref13">
        <mixed-citation>
          [13]
          <string-name>
            <given-names>Y.</given-names>
            <surname>Kazakov</surname>
          </string-name>
          ,
          <string-name>
            <surname>M.</surname>
          </string-name>
          <article-title>Kro¨tzsch, and</article-title>
          <string-name>
            <given-names>F.</given-names>
            <surname>Simancik</surname>
          </string-name>
          .
          <article-title>The incredible ELK - from polynomial procedures to e cient reasoning with el ontologies</article-title>
          .
          <source>J. Autom. Reasoning</source>
          ,
          <volume>53</volume>
          (
          <issue>1</issue>
          ):
          <fpage>1</fpage>
          -
          <lpage>61</lpage>
          ,
          <year>2014</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref14">
        <mixed-citation>
          [14]
          <string-name>
            <given-names>M.</given-names>
            <surname>Knechtel</surname>
          </string-name>
          and
          <string-name>
            <given-names>H.</given-names>
            <surname>Stuckenschmidt</surname>
          </string-name>
          .
          <article-title>Query-based access control for ontologies</article-title>
          . In P. Hitzler and T. Lukasiewicz, editors,
          <source>RR</source>
          , volume
          <volume>6333</volume>
          of Lecture Notes in Computer Science, pages
          <fpage>73</fpage>
          -
          <lpage>87</lpage>
          . Springer,
          <year>2010</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref15">
        <mixed-citation>
          [15]
          <string-name>
            <given-names>I.</given-names>
            <surname>Kollia</surname>
          </string-name>
          and
          <string-name>
            <given-names>B.</given-names>
            <surname>Glimm</surname>
          </string-name>
          .
          <article-title>Optimizing SPARQL query answering over OWL ontologies</article-title>
          .
          <source>CoRR, abs/1402.0576</source>
          ,
          <year>2014</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref16">
        <mixed-citation>
          [16]
          <string-name>
            <given-names>F.</given-names>
            <surname>Martin-Recuerda</surname>
          </string-name>
          and
          <string-name>
            <given-names>D.</given-names>
            <surname>Walther</surname>
          </string-name>
          .
          <article-title>Axiom dependency hypergraphs for fast modularisation and atomic decomposition</article-title>
          . In M. Bienvenu,
          <string-name>
            <given-names>M.</given-names>
            <surname>Ortiz</surname>
          </string-name>
          ,
          <string-name>
            <given-names>R.</given-names>
            <surname>Rosati</surname>
          </string-name>
          , and M. Simkus, editors,
          <source>Proceedings of the 27th International Workshop on Description Logics (DL'14)</source>
          , volume
          <volume>1193</volume>
          <source>of CEUR Workshop Proceedings</source>
          , pages
          <fpage>299</fpage>
          -
          <lpage>310</lpage>
          ,
          <year>2014</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref17">
        <mixed-citation>
          [17]
          <string-name>
            <given-names>U.</given-names>
            <surname>Sattler</surname>
          </string-name>
          ,
          <string-name>
            <given-names>T.</given-names>
            <surname>Schneider</surname>
          </string-name>
          , and
          <string-name>
            <given-names>M.</given-names>
            <surname>Zakharyaschev</surname>
          </string-name>
          .
          <article-title>Which kind of module should I extract? In B</article-title>
          . Cuenca Grau et al., editor,
          <source>Proceedings of the 22nd International Workshop on Description Logics (DL</source>
          <year>2009</year>
          ), Oxford, UK,
          <source>July 27-30</source>
          ,
          <year>2009</year>
          , volume
          <volume>477</volume>
          <source>of CEUR Workshop Proceedings. CEUR-WS.org</source>
          ,
          <year>2009</year>
          .
        </mixed-citation>
      </ref>
    </ref-list>
  </back>
</article>