<?xml version="1.0" encoding="UTF-8"?>
<TEI xml:space="preserve" xmlns="http://www.tei-c.org/ns/1.0" 
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
xsi:schemaLocation="http://www.tei-c.org/ns/1.0 https://raw.githubusercontent.com/kermitt2/grobid/master/grobid-home/schemas/xsd/Grobid.xsd"
 xmlns:xlink="http://www.w3.org/1999/xlink">
	<teiHeader xml:lang="en">
		<fileDesc>
			<titleStmt>
				<title level="a" type="main">SPIRIT: A Semantic Transparency and Compliance Stack</title>
			</titleStmt>
			<publicationStmt>
				<publisher/>
				<availability status="unknown"><licence/></availability>
			</publicationStmt>
			<sourceDesc>
				<biblStruct>
					<analytic>
						<author>
							<persName><forename type="first">Patrick</forename><surname>Westphal</surname></persName>
							<affiliation key="aff0">
								<orgName type="department">Institute for Applied Informatics (InfAI)</orgName>
								<orgName type="institution">University of Leipzig</orgName>
								<address>
									<region>DE</region>
								</address>
							</affiliation>
						</author>
						<author>
							<persName><forename type="first">Javier</forename><forename type="middle">D</forename><surname>Fernández</surname></persName>
							<email>javier.fernandez@wu.ac.at</email>
							<affiliation key="aff1">
								<orgName type="institution">Vienna University of Economics</orgName>
							</affiliation>
							<affiliation key="aff2">
								<orgName type="institution">Complexity Science Hub Vienna</orgName>
								<address>
									<country>AT</country>
								</address>
							</affiliation>
						</author>
						<author>
							<persName><forename type="first">Sabrina</forename><surname>Kirrane</surname></persName>
							<email>sabrina.kirrane@wu.ac.at</email>
							<affiliation key="aff1">
								<orgName type="institution">Vienna University of Economics</orgName>
							</affiliation>
						</author>
						<author>
							<persName><forename type="first">Jens</forename><surname>Lehmann</surname></persName>
							<email>jens.lehmann@iais.fraunhofer.de</email>
							<affiliation key="aff3">
								<orgName type="department">Enterprise Information Systems</orgName>
								<orgName type="institution">Fraunhofer IAIS</orgName>
								<address>
									<region>DE</region>
								</address>
							</affiliation>
						</author>
						<title level="a" type="main">SPIRIT: A Semantic Transparency and Compliance Stack</title>
					</analytic>
					<monogr>
						<imprint>
							<date/>
						</imprint>
					</monogr>
					<idno type="MD5">32A16B57216A564BCDF4BAA78A9BE1FD</idno>
				</biblStruct>
			</sourceDesc>
		</fileDesc>
		<encodingDesc>
			<appInfo>
				<application version="0.7.2" ident="GROBID" when="2023-03-25T08:04+0000">
					<desc>GROBID - A machine learning software for extracting information from scholarly documents</desc>
					<ref target="https://github.com/kermitt2/grobid"/>
				</application>
			</appInfo>
		</encodingDesc>
		<profileDesc>
			<abstract>
<div xmlns="http://www.tei-c.org/ns/1.0"><p>The European General Data Protection Regulation (GDPR) sets new precedents for the processing of personal data. In this paper, we propose an architecture that provides an automated means to enable transparency with respect to personal data processing and sharing transactions and compliance checking with respect to data subject usage policies and GDPR legislative obligations.</p></div>
			</abstract>
		</profileDesc>
	</teiHeader>
	<text xml:lang="en">
		<body>
<div xmlns="http://www.tei-c.org/ns/1.0"><head n="1">Introduction</head><p>The European General Data Protection Regulation (GDPR) came into effect in May 2018. Although Recital 26 of the GDPR clearly states that the obligations set forth in the GDPR do not apply to anonymous data, it is often impossible to guarantee that data is truly anonymous. Especially in a Big Data context many companies find themselves in a state of uncertainty with respect to current business intelligence operations. Another issue faced by many companies is the fact that the desired outcome can not always be achieved over anonymised data (e.g. personalised recommendations). In such cases, there is a need not only to obtain consent for personal data processing from the data subject, but also to provide transparency with respect to the processing and demonstrate compliance with respect to the data subjects consent. Towards this goal, in this paper, we propose a personal data processing transparency and compliance architecture that employs existing Big Data processing techniques.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head n="2">The SANSA Stack</head><p>The current "Big Data landscape" provides a plethora of tools and frameworks covering a variety of methods and techniques for processing huge amounts of data via a distributed cluster of machines. However, none of the general purpose Big Data processing frameworks provide built-in support for processing big semantic data e.g. to load and store RDF data, which, as a uniform data format supports dealing with heterogeneity of Big Data. This gap is tackled by the Semantic Analytics Stack (SANSA)<ref type="foot" target="#foot_0">5</ref>  <ref type="bibr" target="#b0">[1]</ref> which is an open source semantic data processing framework built on top of Apache Spark<ref type="foot" target="#foot_1">6</ref> and Apache Flink<ref type="foot" target="#foot_2">7</ref> SANSA provides a stack of functional layers ranging from RDF/OWL data representation to machine learning algorithms working on semantic data.</p><p>The Knowledge Distribution and Representation layer provides a means to read and write RDF and OWL files. In terms of data structures and programming interfaces SANSA follows the common and accepted representations of Apache Jena<ref type="foot" target="#foot_3">8</ref> and the OWL API<ref type="foot" target="#foot_4">9</ref> . Hence, the RDF and OWL data is provided as distributed collections of Apache Jena triples and OWL API axioms, respectively. On top of this, the Query layer comprises functionality for searching, exploring and extracting information from big semantic data through the SPARQL query language. SANSA supports executing SPARQL queries within an Apache Spark/Flink program, or via an HTTP SPARQL endpoint. In both cases the actual queries are translated into lower level Apache Spark/Flink data processing instructions and executed on the Knowledge Distribution and Representation layer. The next layer in the SANSA Stack is the Inference layer which builds on the layers mentioned so far. Besides actual data-level assertions, the Semantic Web technology stack also provides a means to express schema or ontological knowledge. Parts of the inherent semantics of the respective W3C standards, RDFS and OWL, may be encoded as rules which can be applied to infer new knowledge. With this forward chaining process all rule-based inferences may be materialized. In contrast backward chaining techniques infer new knowledge starting at a given 'goal', which can be a (set of) RDF triple(s). SANSA supports different existing reasoning profiles for rule-based forward/backward chaining. Apart from these profiles, SANSA is able to compute an efficient execution plan for arbitrary sets of rules. Hence, users can adjust the trade-of between expressivity and performance, and furthermore introduce custom rules, e.g. to represent business policies. On top of the SANSA Stack the Machine Learning layer provides a collection of machine learning algorithms that can directly work on RDF triples or OWL axioms. The algorithms implemented thus far cover knowledge graph embeddings <ref type="bibr" target="#b1">[2]</ref> (e.g. for link prediction), graph clustering and association rule mining techniques.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head n="3">SPIRIT: Leveraging the SANSA Stack for Transparency and Compliance</head><p>In this paper, we introduce our transparency and compliance checking implementation of the SANSA stack, which is depicted in transparency and compliance checking application (right) is used to analyse log information concerning personal data processing and sharing that is output from line of business applications on a continuous basis (bottom left), and to present the information to the user via the SPIRIT dashboard (top left).</p><p>Ingesting Transaction Logs into SPIRIT: When it comes to personal data processing there is a need for a general mechanism to verify compliance with existing usage policies and legal obligations. One such mechanisms is the recommissioning of existing application and system logs such that they can be used to verify that data processing and sharing complies with usage policies specified by the data subject. Considering the sheer volume of data generated when application logs are used for personal data processing and sharing auditing, there is a need for a file system that is able to handle Big Data, is fault tolerant, and is capable of supporting parallel processing. The Hadoop Distributed File System (HDFS)<ref type="foot" target="#foot_5">10</ref> fulfills all those criteria and is the default choice for Apache Spark and Apache Flink. Moreover, there is a stable and mature solution to transfer log data to HDFS, called Apache Flume<ref type="foot" target="#foot_6">11</ref> , which provides a means to transform log content, e.g. obtained from an application log, before it is passed along to the HDFS. This allows heterogeneous transaction logs to be translated to RDF on the fly.</p><p>SPIRIT Transaction Log Processing with SANSA: Our SANSA-based architecture allows storage and access to all log data in a Big Data processing environment. Semantic web technologies ease data integration across several heterogeneous line of business applications, enabling interoperability across platforms and providing a simple way to link user data and policies. As sketched in Figure <ref type="figure">1</ref> the main steps that need to be performed include: (1) loading the policies from the policy store and dividing them into rules that are used in the reasoning step, and schema/ontology axioms added to the log data later; (2) loading the RDF log data stored in the distributed file system; (3) initialising a query engine with the log and schema/ontology data; (4) creating a reasoner which works on the query engine, considers the rules from the policy store and a set reasoning profile; and eventually (5) invoking the backward chaining on the given query goal. Our SPIRIT architecture offers transparency for data subjects, and means to verify that all business processes comply both with the consent provided by the data subject and relevant obligations from the GDPR by: (i) encoding user data policies in (subsets of) OWL 2 DL; and (ii) providing a compliance checking mechanisms on the basis of the the SANSA inference rule-engine. As for the former, we allow policies to define restrictions in terms of five data categories related to the GDPR regulation (as depicted in Figure <ref type="figure">1</ref>): Data reflects which personal data is governed by the policy. Processing lists the operations (e.g. anonymisation, aggregation, etc.) performed on the personal data. Purpose describes why data are collected/processed. Storage concerns where data are stored and for how long. Sharing specifies the potential use of the personal data by third parties. In addition to the personal data policies, the SPIRIT architecture holds rules that provide means to check compliance of data processing and sharing transactions according to the data policies and GDPR regulations. Acknowledging that GDPR compliance checking cannot fully automated (given the generality, vagueness and subjectivity inherent in the regulation), we focus on verifying minimal sets of conditions ("if condition X holds then the data policy Y is violated") to assist the stakeholders in charge of providing evidence of GDPR compliance.</p><p>The SPIRIT Dashboard: The SPIRIT dashboard provides a means for data subjects, companies and supervisory authorities to obtain transparency with respect to the processing of personal data and compliance with respect to the data subjects usage policies. A user request is converted into a query which is passed to the SANSA application, together with a user identifier. The results are then passed back to the dashboard to be presented to the user.</p></div><figure xmlns="http://www.tei-c.org/ns/1.0" xml:id="fig_0"><head>Figure 1 .Fig. 1 .</head><label>11</label><figDesc>Fig. 1. SPIRIT architecture exemplifying the transparency use case</figDesc></figure>
			<note xmlns="http://www.tei-c.org/ns/1.0" place="foot" n="5" xml:id="foot_0">SANSA Stack home page, http://sansa-stack.net</note>
			<note xmlns="http://www.tei-c.org/ns/1.0" place="foot" n="6" xml:id="foot_1">Apache Spark, https://spark.apache.org</note>
			<note xmlns="http://www.tei-c.org/ns/1.0" place="foot" n="7" xml:id="foot_2">Apache Flink, https://flink.apache.org</note>
			<note xmlns="http://www.tei-c.org/ns/1.0" place="foot" n="8" xml:id="foot_3">Apache Jena, http://jena.apache.org/</note>
			<note xmlns="http://www.tei-c.org/ns/1.0" place="foot" n="9" xml:id="foot_4">OWL API, https://owlcs.github.io/owlapi/</note>
			<note xmlns="http://www.tei-c.org/ns/1.0" place="foot" n="10" xml:id="foot_5">HDFS, http://hadoop.apache.org/</note>
			<note xmlns="http://www.tei-c.org/ns/1.0" place="foot" n="11" xml:id="foot_6">Apache Flume, http://flume.apache.org/</note>
		</body>
		<back>

			<div type="acknowledgement">
<div xmlns="http://www.tei-c.org/ns/1.0"><p>Acknowledgments. This work is partially funded by the European Union's Horizon 2020 research and innovation programme grants 732194 (QROWD) and 731601 (SPECIAL), and the Austrian Research Promotion Agency (FFG) grant 861213 (CitySPIN).</p></div>
			</div>

			<div type="references">

				<listBibl>

<biblStruct xml:id="b0">
	<analytic>
		<title level="a" type="main">Distributed semantic analytics using the sansa stack</title>
		<author>
			<persName><forename type="first">J</forename><surname>Lehmann</surname></persName>
		</author>
		<author>
			<persName><forename type="first">G</forename><surname>Sejdiu</surname></persName>
		</author>
		<author>
			<persName><forename type="first">L</forename><surname>Bühmann</surname></persName>
		</author>
		<author>
			<persName><forename type="first">P</forename><surname>Westphal</surname></persName>
		</author>
		<author>
			<persName><forename type="first">C</forename><surname>Stadler</surname></persName>
		</author>
		<author>
			<persName><forename type="first">I</forename><surname>Ermilov</surname></persName>
		</author>
		<author>
			<persName><forename type="first">S</forename><surname>Bin</surname></persName>
		</author>
		<author>
			<persName><forename type="first">N</forename><surname>Chakraborty</surname></persName>
		</author>
		<author>
			<persName><forename type="first">M</forename><surname>Saleem</surname></persName>
		</author>
		<author>
			<persName><forename type="first">A.-C</forename><forename type="middle">N</forename><surname>Ngomo</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="m">Proceedings of the 16th International Semantic Web Conference (ISWC)</title>
				<meeting>the 16th International Semantic Web Conference (ISWC)</meeting>
		<imprint>
			<publisher>Springer</publisher>
			<date type="published" when="2017">2017</date>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b1">
	<analytic>
		<title level="a" type="main">A review of relational machine learning for knowledge graphs</title>
		<author>
			<persName><forename type="first">M</forename><surname>Nickel</surname></persName>
		</author>
		<author>
			<persName><forename type="first">K</forename><surname>Murphy</surname></persName>
		</author>
		<author>
			<persName><forename type="first">V</forename><surname>Tresp</surname></persName>
		</author>
		<author>
			<persName><forename type="first">E</forename><surname>Gabrilovich</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="m">Proceedings of the IEEE</title>
				<meeting>the IEEE</meeting>
		<imprint>
			<date type="published" when="2016">2016</date>
			<biblScope unit="volume">104</biblScope>
			<biblScope unit="page" from="11" to="33" />
		</imprint>
	</monogr>
</biblStruct>

				</listBibl>
			</div>
		</back>
	</text>
</TEI>
