<!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>
      <article-id pub-id-type="doi">10.3233/978-1-61499-468-8-187</article-id>
      <title-group>
        <article-title>DALICC As A Service - A Scaleable Architecture for License Clearance</article-title>
      </title-group>
      <contrib-group>
        <contrib contrib-type="author">
          <string-name>Giray Havur</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
          <xref ref-type="aff" rid="aff1">1</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Sebastian Neumaier</string-name>
          <xref ref-type="aff" rid="aff1">1</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Tassilo Pellegrini</string-name>
          <xref ref-type="aff" rid="aff1">1</xref>
        </contrib>
        <aff id="aff0">
          <label>0</label>
          <institution>Siemens AG Austria, Technology</institution>
          ,
          <addr-line>Siemensstraße 90, 1210 Vienna</addr-line>
          ,
          <country country="AT">Austria</country>
        </aff>
        <aff id="aff1">
          <label>1</label>
          <institution>St. Pölten University of Applied Sciences</institution>
          ,
          <addr-line>Matthias Corvinus-Straße 15, 3100 St. Pölten</addr-line>
          ,
          <country country="AT">Austria</country>
        </aff>
      </contrib-group>
      <pub-date>
        <year>2021</year>
      </pub-date>
      <volume>3290</volume>
      <fpage>06</fpage>
      <lpage>09</lpage>
      <abstract>
        <p>DALICC stands for Data Licenses Clearance Center. It is a software framework that utilizes semantic web standards and linked data principles for the purpose of cost eficient clearing of rights issues in the creation of derivative data and software works. The paper describes the service architecture of and usage scenarios for the DALICC framework, exemplifying a scaleable architecture of semantic web enabled compliance services.</p>
      </abstract>
      <kwd-group>
        <kwd>eol&gt;license clearance</kwd>
        <kwd>legal compliance</kwd>
        <kwd>policy aware system</kwd>
      </kwd-group>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>1. Introduction</title>
    </sec>
    <sec id="sec-2">
      <title>2. Related Work</title>
      <p>
        Most of the work on automated processing of licensing information is situated in the context
of Rights Expression Languages and contracting [
        <xref ref-type="bibr" rid="ref3 ref4 ref5">3, 4, 5</xref>
        ]. Early work dates back to 1989 and
      </p>
      <sec id="sec-2-1">
        <title>API Users</title>
        <p>...
R</p>
      </sec>
      <sec id="sec-2-2">
        <title>Load Balancer</title>
        <p>R
search for a license,
compose a license,
check compatibility of
licenses (optionally
with a goal license)</p>
      </sec>
      <sec id="sec-2-3">
        <title>Web Framework</title>
        <p>R</p>
      </sec>
      <sec id="sec-2-4">
        <title>Reasoner</title>
        <p>R
R
R</p>
      </sec>
      <sec id="sec-2-5">
        <title>License</title>
      </sec>
      <sec id="sec-2-6">
        <title>Library</title>
      </sec>
      <sec id="sec-2-7">
        <title>Dependency</title>
      </sec>
      <sec id="sec-2-8">
        <title>Graph</title>
      </sec>
      <sec id="sec-2-9">
        <title>User</title>
      </sec>
      <sec id="sec-2-10">
        <title>Data</title>
        <p>DALICC Services</p>
      </sec>
      <sec id="sec-2-11">
        <title>License</title>
      </sec>
      <sec id="sec-2-12">
        <title>Search</title>
      </sec>
      <sec id="sec-2-13">
        <title>License</title>
      </sec>
      <sec id="sec-2-14">
        <title>Composer</title>
        <p>has since then sparked a rich body of research [6]. One of the first foundational papers on
reasoning over licenses was published in 2002 by [7] and extended by [8, 9] towards rule-based
resolution of licensing conflicts based on OWL constructs. A proof of applicability was provided
by [10] and [11], who describe formalisations of a license clearance tool for derivative works
based on the processing of deontic clauses [12, 13]. [10] also provide a demo called Licentia
(http://licentia.inria.fr/) that exemplifies the practical value of such a service. More recent work
on rule-based conflict detection in license compatibility has been provided by [ 14]. Our paper
contributes to this research by describing a user-centric and scalable architecture that can be
understood as a blueprint for semantic web-enabled compliance services.</p>
      </sec>
    </sec>
    <sec id="sec-3">
      <title>3. DALICC Service Architecture</title>
      <p>The components of the DALICC service framework are shown in Figure 1. An API User’s request
is first redirected to an available DALICC instance where the web framework delivers the request
to the relevant micro-service. To handle multiple API requests, we rely on container-based
load balancing in front of the services. The license library is a repository that contains
machinereadable and human-readable representations of the licenses, the former as ODRL policies (set
of statements) and the latter as plain text. The dependency graph encodes the expert knowledge
about the implicit and explicit semantic dependencies between actions [15, 16]. Additionally, we
store user specific data such as licenses provided by individual users and executed compatibility
reports. The following APIs are available:
The License Search API queries the license library given specific text or facets.
/get/licenses/{license_identifier}: It returns the license definition in a RDF
serialization format (e.g., Turtle and JSON-LD) for a given license identifier.
/post/licenses/search/text: Given a string, it returns a JSON object where license
identifiers and descriptions are listed w.r.t. their relatedness to the string.
/post/licenses/search/faceted: Given the asset type (i.e., creative work, dataset, or
software) and a list of permissions, duties and prohibitions in an RDF serialization format, it
returns a JSON object where license identifiers and descriptions are listed.</p>
      <p>The License Composer API allows customized licenses to be created from a set of ODRL
policy-permission-action-duty statements expressed in an RDF serialization format.
/get/licenses/composer/vocabulary: Returns a JSON object where ODRL, ccREL and
DALICC vocabularies for defining license statements are listed.
/post/licenses/composer/check: Returns a JSON object that states if the sent license is
formally correct, logically coherent and thus legally valid, and an error message if the license is
badly formed.
/post/licenses/composer/upload: Uploads the license in the license library and returns
the new license identifier.</p>
      <p>The Compatibility Check API provides information on equivalence, similarity and
compatibility within a set of licenses. It supports two modes: a) reporting all the conflicting pairs of
statements in the given set of licenses and b) further checking if a defined goal license subsumes
the input set of licenses, e.g., a software developer wants to find out if his/her project can be
published under a specific license. In both modes, the reasoner supports conflict resolution by
suggesting the minimum removal of statements/licenses for achieving a coherent state.
/post/licenses/compatibility: Given a list of license identifiers and optionally a goal
license identifier, it returns the compatibility report.</p>
    </sec>
    <sec id="sec-4">
      <title>4. Application Scenarios</title>
      <p>In the following section, we provide example application scenarios for the proposed DALICC
APIs. Large scale software projects potentially have dozens – or even hundreds – of
dependencies to other projects, e.g., to third-party software packages, libraries and modules. Example
repositories that list libraries and modules together with their licenses are the Python
Package Index (“pip”)1 and the Node Package Manager (“‘npm”)2 for the JavaScript programming
language. For instance, the popular Python module “pandas” itself already depends on over 80
other modules listed in the respective requirements file. 3</p>
      <p>The goal of the DALICC service is to support programmers and data engineers in the process
of creating and publishing new applications that depend on third-party sources. Figure 2
displays how this is envisioned: software projects typically specify a list of dependencies (e.g.,
a requirements.txt file in Python); initially, the respective licenses get extracted from the
listed dependencies and mapped to the DALICC license identifiers. Regarding the identification
of licenses, the Software Package Data Exchange4 (SPDX) provides standardised, short identifiers
for a number of standard licenses that potentially serve as canonical permanent URLs. Having
1https://pypi.org/
2https://www.npmjs.com/
3https://github.com/pandas-dev/pandas/blob/master/requirements-dev.txt, last accessed 2021-06-08
4https://spdx.org/licenses/, last accessed 2021-06-08
extraction
of license
identifiers
compatibility check
of extracted licenses
+</p>
      <sec id="sec-4-1">
        <title>Goal</title>
      </sec>
      <sec id="sec-4-2">
        <title>License</title>
      </sec>
      <sec id="sec-4-3">
        <title>Identifier</title>
        <p>goal license check
against extracted
licenses
DALICC
Services</p>
      </sec>
      <sec id="sec-4-4">
        <title>Software</title>
      </sec>
      <sec id="sec-4-5">
        <title>Project</title>
      </sec>
      <sec id="sec-4-6">
        <title>Libraries/</title>
      </sec>
      <sec id="sec-4-7">
        <title>Modules</title>
      </sec>
      <sec id="sec-4-8">
        <title>License</title>
      </sec>
      <sec id="sec-4-9">
        <title>Identifiers</title>
        <p>the licenses extracted, a programmer can check for compatibility of the dependencies via the
DALICC API. If the project gets published under a new license (that exists in the DALICC license
library), the API allows to check for compatibility with the specified “goal license” (cf. Figure 2).</p>
      </sec>
    </sec>
    <sec id="sec-5">
      <title>5. Concluding remarks</title>
      <p>We are currently working on a FAIR documentation and will make the DALICC framework
available under a dual license by the end of 2021, thus allowing various forms of collaborative
exploitation. The framework closes the existing gap between the technological capabilities
to create and publish digital assets and the legal infrastructure necessary to provide them on
a legally secure basis for reuse. Hence, DALICC is a tool that puts policies into practice and
thus facilitates data governance at various levels. Thus, the DALICC framework should be
understood as an enabling service for the emerging data economy.</p>
    </sec>
  </body>
  <back>
    <ref-list>
      <ref id="ref1">
        <mixed-citation>
          [1]
          <string-name>
            <given-names>T.</given-names>
            <surname>Pellegrini</surname>
          </string-name>
          , et al.,
          <source>Automated Rights Clearance Using Semantic Web Technologies: The DALICC Framework, in: Semantic Applications</source>
          , Springer Berlin Heidelberg, Berlin, Heidelberg,
          <year>2018</year>
          , pp.
          <fpage>203</fpage>
          -
          <lpage>218</lpage>
          . URL: http://link.springer.com/10.1007/978-3-
          <fpage>662</fpage>
          -55433-3_
          <fpage>14</fpage>
          . doi:
          <volume>10</volume>
          .1007/978-3-
          <fpage>662</fpage>
          -55433-3_
          <fpage>14</fpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref2">
        <mixed-citation>
          [2]
          <string-name>
            <given-names>O.</given-names>
            <surname>Panasiuk</surname>
          </string-name>
          , et al.,
          <article-title>Modeling and Reasoning over Data Licenses</article-title>
          , in: A.
          <string-name>
            <surname>Gangemi</surname>
          </string-name>
          , et al. (Eds.),
          <source>The Semantic Web: ESWC 2018 Satellite Events</source>
          , volume
          <volume>11155</volume>
          , Springer International Publishing, Cham,
          <year>2018</year>
          , pp.
          <fpage>218</fpage>
          -
          <lpage>222</lpage>
          . URL: http://link.springer.com/10.1007/ 978-3-
          <fpage>319</fpage>
          -98192-5_
          <fpage>41</fpage>
          . doi:
          <volume>10</volume>
          .1007/978-3-
          <fpage>319</fpage>
          -98192-5_
          <fpage>41</fpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref3">
        <mixed-citation>
          [3]
          <string-name>
            <given-names>V.</given-names>
            <surname>Rodriguez-Doncel</surname>
          </string-name>
          ,
          <string-name>
            <given-names>J.</given-names>
            <surname>Delgado</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A Media</given-names>
            <surname>Value</surname>
          </string-name>
          <article-title>Chain Ontology for MPEG-21</article-title>
          , IEEE Multimedia 16 (
          <year>2009</year>
          )
          <fpage>44</fpage>
          -
          <lpage>51</lpage>
          . URL: http://ieeexplore.ieee.org/lpdocs/epic03/wrapper.htm? arnumber=6214727. doi:
          <volume>10</volume>
          .1109/MMUL.
          <year>2009</year>
          .
          <volume>78</volume>
          .
        </mixed-citation>
      </ref>
      <ref id="ref4">
        <mixed-citation>
          [4]
          <string-name>
            <given-names>J.</given-names>
            <surname>Prenafeta</surname>
          </string-name>
          , Protecting Copyright Through Semantic Technology,
          <source>Publishing Research Quarterly</source>
          <volume>26</volume>
          (
          <year>2010</year>
          )
          <fpage>249</fpage>
          -
          <lpage>254</lpage>
          . URL: http://link.springer.
          <source>com/10.1007/s12109-010-9182-3</source>
          . doi:
          <volume>10</volume>
          .1007/s12109-010-9182-3.
        </mixed-citation>
      </ref>
      <ref id="ref5">
        <mixed-citation>
          [5]
          <string-name>
            <given-names>E.</given-names>
            <surname>Rodriguez</surname>
          </string-name>
          ,
          <string-name>
            <given-names>J.</given-names>
            <surname>Delgado</surname>
          </string-name>
          ,
          <string-name>
            <given-names>L.</given-names>
            <surname>Boch</surname>
          </string-name>
          ,
          <string-name>
            <given-names>V.</given-names>
            <surname>Rodriguez-Doncel</surname>
          </string-name>
          ,
          <article-title>Media Contract Formalization Using a Standardized Contract Expression Language</article-title>
          , IEEE MultiMedia
          <volume>22</volume>
          (
          <year>2015</year>
          )
          <fpage>64</fpage>
          -
          <lpage>74</lpage>
          .
        </mixed-citation>
      </ref>
    </ref-list>
  </back>
</article>