<!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>Semantic Policy Language for Usage Control</article-title>
      </title-group>
      <contrib-group>
        <contrib contrib-type="author">
          <string-name>Ines Akaichi</string-name>
          <email>ines.akaichi@wu.ac.at</email>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Sabrina Kirrane</string-name>
          <email>sabrina.kirrane@wu.ac.at</email>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <contrib contrib-type="editor">
          <string-name>Usage Control, Policy Specification, Semantic Web, Knowledge Representation</string-name>
        </contrib>
        <aff id="aff0">
          <label>0</label>
          <institution>Institute for Information Systems &amp; New Media, Vienna University of Economics and Business (WU)</institution>
          ,
          <addr-line>Vienna</addr-line>
          ,
          <country country="AT">Austria</country>
        </aff>
      </contrib-group>
      <pub-date>
        <year>2022</year>
      </pub-date>
      <fpage>13</fpage>
      <lpage>15</lpage>
      <abstract>
        <p>Usage control involves the encoding and enforcement of policies regarding future data use in the areas of data protection, intellectual property management, and secrets management. Proposed policy languages are either too specific or too general in their ability to express usage policies. In this paper, we propose the Usage Control Policy language and show how we can encode usage control specific requirements using deontic rules and fine-grained conditions.</p>
      </abstract>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>1. Introduction</title>
      <p>
        Modern decentralized solutions, such as the Internet of Things (IoT) and distributed knowledge
graph applications, face a variety of legislative challenges (e.g, data protection legislation and
copyright legislation) regarding data and digital asset management. In addition, according to
Pretschner et al. [
        <xref ref-type="bibr" rid="ref1">1</xref>
        ], data owners are reluctant to share their data with decentralized solutions, as
often they have no control over how their data are used. Technologies that aim to address these
challenges, which are usually classified as usage control, aim to ensure that data consumers
handle data according to usage policies stipulated by data owners.
      </p>
      <p>Herein, we focus on policy-based usage control, in the context of which we use
machinereadable policies to express the requirements for future data usage and mechanisms to enforce
the respective usage policies. These policies need to be able to encode normative statements,
mainly permissions (respectively prohibitions) and obligations (respectively dispensations)
related to the use of data. The diferent deontic constructs can specify the conditions in which
data may be used or in which actions need to be taken.</p>
      <p>
        Various semantic policy languages have been proposed that could potentially be suitable
for expressing usage control, as they support deontic concepts in their core design. The Open
Digital Rights Language (ODRL)1 was originally proposed to express licenses. In addition,
attempts have been made to generalize the ODRL model to express other policies [
        <xref ref-type="bibr" rid="ref2">2</xref>
        ], such as
data protection according to the General Data Protection Regulation (GDPR). ODRL allows
constraints to be expressed as simple assertions that can also be combined using logical operators
(e.g., and, or). However, ODRL and existing derivatives do not provide concrete guidance for
CEUR
Workshop
Proceedings
the specification of granular semantic conditions such as temporal (e.g., on a monthly or hourly
basis), spatial (e.g., on an organizational or country level), cardinality and similar conditions that
are needed to express usage policies. Although, Rei [
        <xref ref-type="bibr" rid="ref3">3</xref>
        ] can be used to encode general policies
(e.g., access control, privacy, conversation, etc.), as per ODRL, Rei does not support fine-grained
conditions and relies primarily on existing domain ontologies to express conditions.
      </p>
      <p>In this paper, we build on these two policy languages to propose a first version of the Usage
Control Policy language (UCP) that is built on top of domain independent ontologies that feature
deontic concepts and fine-grained constraints governing the use of data. Additionally, our
language has support for classes of enforcement that are derived from deontic concepts and
which are important for making correct policy decisions.</p>
    </sec>
    <sec id="sec-2">
      <title>2. Use Case</title>
      <p>Our use case is inspired from the IoT domain pertaining to a smart city, where residents make
use of multiple smart objects, such as smart homes, cars, parking lots, etc. We assume that
marketing companies are interested in the data produced by these smart objects in order to
revise new or adjust existing marketing strategies. Thus, the manufacturers of these objects
may host or use data sharing platforms whereby data resulting from the use of smart objects
are shared with both their customers and various third parties. Consequently, these platforms
could ofer subscribers the ability to download data relating to smart objects or their users.</p>
    </sec>
    <sec id="sec-3">
      <title>3. The UCP Language</title>
      <p>
        In this initial version of the UCP language, we focus on supporting the encoding of simple usage
policies that could be used for ex-ante compliance checking, for instance. Other approaches to
policy compliance checking may be the use of an ex-post approach. In the former approach,
we assume that marketing companies encode their usage request in a knowledge graph and
submits this request to the usage control framework, which is provided by the manufacturers
and is responsible for determining if usage is permitted, prohibited, or if usage is subject to
specific obligations that need to be fulfilled by marketing companies. This is performed by
looking for exact matches or matches that are based on simple subsumption reasoning between
the subjects, objects, actions, and constraints of the usage policy and the usage request.
A Core Model for Usage Control. Our model design is informed by our extensive literature
review regarding the specification and enforcement of usage control policies [
        <xref ref-type="bibr" rid="ref4">4</xref>
        ] and the work
of [
        <xref ref-type="bibr" rid="ref2">2</xref>
        ] and [
        <xref ref-type="bibr" rid="ref3">3</xref>
        ]. In Figure 1, we present the core model of our policy language, which is based
on deontic constructs that allow policies to be expressed as what an entity can/can not do and
should/should not do with the data in terms of actions. In the proposed model, a Policy is made
up of a set of Rules that encode Permissions, Prohibitions, Obligations, or Dispensations.
Each Rule is associated with an Action that is performed by a Subject on a target Object. A
Rule, a Subject, an Object, and an Action can also be constrained by one or more Constraints.
In addition, the model supports nested rules that can express nested requirements, which are
needed to encode regulatory requirements, such as those set forth by the GDPR [
        <xref ref-type="bibr" rid="ref2">2</xref>
        ].
Usage Actions and Constraints. Following the approach proposed by Kagal et al. [
        <xref ref-type="bibr" rid="ref3">3</xref>
        ], Action
has two subclasses: speech acts and domain actions. Speech acts allow conversation policies
between agents to be described, among other things. Whereas, Domain actions are actions on
the objects in the domain. In our context, we replace speech acts by UsageActions, which will
allow usage control specific actions to be described, also called classes of enforcement. Classes
of enforcement are actions that can prevent undesired system events by changing the behavior
of a system. According to our survey on usage control [
        <xref ref-type="bibr" rid="ref4">4</xref>
        ], there could be up to six diferent
classes of enforcement, which we present in Figure 2. Permission and Inhibition allow or
prohibit requests for data usage; Revocation revokes access in the event of policy violations
or revocation of consent; Delay delays an attempted usage request until the corresponding
obligations are fulfilled; Update modifies certain data values after access is granted in order
to protect data privacy; and Execution executes actions such as sending notifications to data
owners.
      </p>
      <p>
        Following the approach in [
        <xref ref-type="bibr" rid="ref3">3</xref>
        ], Contraint has two subclasses: DomainConstraint and
BooleanConstraint. DomainConstraint describes simple assertions from the domain. While,
BooleanConstraint allows constraints to be joined together with operators, AND,OR and NOT,
to create complex constraints. We extend Constraint by adding the class UsageConstraint.
The new class allows usage specific constraints to be expressed, i.e, under which conditions data
can be accessed/used. Based on existing literature [
        <xref ref-type="bibr" rid="ref1">1</xref>
        ], few usage control constraints are already
identified, such as temporality, geolocation, purpose, and cardinality, as we show in Figure 2.
We plan to enhance the expressiveness of these constraints by including other ontologies and
vocabularies that can express the diferent classes with increased granularity.
      </p>
      <sec id="sec-3-1">
        <title>2Green: concepts from[3]; Blue: concepts from [2]; Orange: our contribution</title>
        <p>A Model Instantiation. In the following, we demonstrate how to use our proposed Usage
Control Policy Language to express examples of policies (P) inspired by our use case. We
assume that usage policies could be expressed by the manufacturers and/or the users of the
smart objects in order to inform marketing companies under what conditions the data produced
can be used. In order to encode our policy examples, we use the Turtle syntax.3
P1. Only subscribed marketing companies are allowed to download power consumption data. They
must keep the downloaded data for a maximum of 6 months. This policy can be described
as a rule that is linked to a deontic permission (that includes a nested rule obligation),
a constraint (a subscribed marketing company), a subject (the marketing company), an
object (power consumption data), and an action (to download). To encode this policy,
we begin by expressing a simple permission describing the right to download data by a
marketing company.
&lt;http://example.com/mcp#Perm_MarketingCompDownloading&gt;</p>
        <p>a &lt;http://example.com/ucp#Permission&gt; .</p>
        <p>The constraint that describes a subscribed marketing company is a domain constraint
that we define as an RDF statement, which is matched with the knowledge graph that
describes the marketing company.
&lt;http://example.com/mcp#IsSubsribed&gt;
a &lt;http://example.com/ucp#DomainConstraint&gt; ;
ucp:subject &lt;http://example.com/mcp#MarketingCompany&gt; ;
ucp:predicate &lt;http://www.w3.org/1999/02/22-rdf-syntax-ns#type&gt; ;
ucp:object &lt;http://example.com/mcp#Subscriber&gt; .</p>
        <p>The obligation to store data for a limited period of time is described as follows.
&lt;http://example.com/mcp#Oblig_MarketingCompStoring&gt;</p>
        <p>a &lt;http://example.com/ucp#Obligation&gt; .</p>
        <p>The obligation involves a time constraint describing the limited duration for storing data.
&lt;http://example.com/mcp#For6Months&gt;</p>
        <p>a &lt;http://example.com/ucp#TemporalConstraint&gt;.</p>
        <p>The storing duration is expressed using the OWL-Time4 concepts: TemporalEntity
and GeneralDurationDescription. In our model, time:TemporalEntity and
ucp:TemporalConstraint can be modeled using the owl:sameAs property.
&lt;http://example.com/mcp#For6Months&gt;</p>
        <p>time:hasDurationDescription &lt;http://example.com/mcp#Duration6Months&gt; .
&lt;http://example.com/mcp#Duration6Months&gt;
a &lt;http://www.w3.org/2006/time#GeneralDurationDescription&gt; ;
time:months 6.0 .</p>
        <p>The permission rule, which encapsulates the above definitions, is described as follows.
&lt;http://example.com/mcp#Rule_MarketingCompDownloading&gt;
a &lt;http://example.com/ucp#Rule&gt; ;
ucp:subject &lt;http://example.com/mcp#SubscribedMarketingCompany&gt; ;
ucp:object &lt;http://example.com/mcp#PowerConsumptionData&gt; ;
ucp:action &lt;http://example.com/mcp#ActionMarketingCompDownloading&gt; ;
ucp:constraint &lt;http://example.com/mcp#IsSubsribed&gt; ;
ucp:deontic &lt;http://example.com/mcp#Perm_MarketingCompDownloading&gt; .
3The respective namespaces are used to identify our UCP ontology ucp:&lt;http://example.com/ucp#&gt;; the marketing
company policy (MCP) onotlogy mcp:&lt;http://example.com/mcp#&gt;; the time ontology time:&lt;http://www.w3.org/2006/time#&gt;;
and the owl ontology owl:&lt;http://www.w3.org/2002/07/owl#&gt;.
4OWL-Time, https://www.w3.org/TR/owl-time/</p>
        <p>The obligation clause that is associated with the permission is described with the following
rule.
&lt;http://example.com/mcp#Rule_MarketingCompStoring&gt;
a &lt;http://example.com/ucp#Rule&gt; ;
ucp:subject &lt;http://example.com/mcp#MarketingCompany&gt; ;
ucp:object &lt;http://example.com/mcp#PowerConsumptionData&gt; ;
ucp:constraint &lt;http://example.com/mcp#For6Months&gt; ;
ucp:action &lt;http://example.com/mcp#ActionMarketingCompStoring&gt; ;
ucp:deontic &lt;http://example.com/mcp#Oblig_MarketingCompStoring&gt; .</p>
      </sec>
      <sec id="sec-3-2">
        <title>The permission is further linked to the associated obligation rule.</title>
        <p>&lt;http://example.com/mcp#Perm_MarketingCompDownloading&gt;</p>
        <p>ucp:nestedRule &lt;http://example.com/mcp#Rule_MarketingCompStoring&gt; .</p>
        <p>P2. Subscribed marketing companies are allowed to download power consumption data for
aggregation purposes only. The encoding of the respective permission follows the same
pattern as for the other policy. In this policy, the constraint is a PurposeConstraint that
is encoded as a simple assertion.
&lt;http://example.com/mcp#ConstraintUsagePurposes&gt;
a &lt;http://example.com/ucp#PurposeConstraint&gt; ;
ucp:usageConstraint &lt;http://example.com/mcp#AggregationPurposes&gt; .</p>
      </sec>
    </sec>
    <sec id="sec-4">
      <title>4. Conclusion and Future Work</title>
      <p>In this paper, we proposed the UCP language, used to express usage control policies. In
future work, we plan to examine the suitability of several fine-grained conditions that we
have mentioned in this paper. In addition, we plan to introduce the states of deontic concepts
into our model, for example to monitor the life cycle of obligations in order to check whether
they are fulfilled or not by the end users. More generally, we aim to study the expressiveness
requirements of various obligations and conditions and how they can be eficiently structured
into various Description Logic policy profiles with well understood semantics and complexity.</p>
    </sec>
    <sec id="sec-5">
      <title>Acknowledgments References</title>
      <p>This work is partially funded under the Marie Skłodowska-Curie grant agreement No 860801
and FWF together with netidee SCIENCE programmes as project number V 759-N.</p>
    </sec>
  </body>
  <back>
    <ref-list>
      <ref id="ref1">
        <mixed-citation>
          [1]
          <string-name>
            <given-names>A.</given-names>
            <surname>Pretschner</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Hilty</surname>
          </string-name>
          ,
          <string-name>
            <given-names>D.</given-names>
            <surname>Basin</surname>
          </string-name>
          , Distributed usage control,
          <source>Commun. ACM</source>
          <volume>49</volume>
          (
          <year>2006</year>
          ).
        </mixed-citation>
      </ref>
      <ref id="ref2">
        <mixed-citation>
          [2]
          <string-name>
            <given-names>M. D.</given-names>
            <surname>Vos</surname>
          </string-name>
          ,
          <string-name>
            <given-names>S.</given-names>
            <surname>Kirrane</surname>
          </string-name>
          ,
          <string-name>
            <given-names>J.</given-names>
            <surname>Padget</surname>
          </string-name>
          ,
          <string-name>
            <given-names>K.</given-names>
            <surname>Satoh</surname>
          </string-name>
          ,
          <article-title>Odrl policy modelling and compliance checking</article-title>
          , in: RuleML+RR, Springer International Publishing, Cham,
          <year>2019</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref3">
        <mixed-citation>
          [3]
          <string-name>
            <given-names>L.</given-names>
            <surname>Kagal</surname>
          </string-name>
          ,
          <string-name>
            <given-names>T.</given-names>
            <surname>Finin</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A.</given-names>
            <surname>Joshi</surname>
          </string-name>
          ,
          <article-title>A policy based approach to security for the semantic web</article-title>
          ,
          <source>in: The Semantic Web - ISWC 2003</source>
          , Springer, Berlin, Heidelberg,
          <year>2003</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref4">
        <mixed-citation>
          [4]
          <string-name>
            <given-names>I.</given-names>
            <surname>Akaichi</surname>
          </string-name>
          ,
          <string-name>
            <given-names>S.</given-names>
            <surname>Kirrane</surname>
          </string-name>
          ,
          <article-title>Usage control specification, enforcement, and robustness: A survey</article-title>
          ,
          <year>2022</year>
          . URL: https://arxiv.org/abs/2203.04800.
        </mixed-citation>
      </ref>
    </ref-list>
  </back>
</article>