<!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>Estimating the Dynamics of SPARQL Query Results Using Binary Classi cation</article-title>
      </title-group>
      <contrib-group>
        <contrib contrib-type="author">
          <string-name>University of Chile</string-name>
        </contrib>
        <contrib contrib-type="author">
          <string-name>amoya</string-name>
        </contrib>
        <contrib contrib-type="author">
          <string-name>ahogang@dcc.uhile.cl</string-name>
        </contrib>
      </contrib-group>
      <abstract>
        <p>We address the problem of estimating when the results of an input SPARQL query over dynamic RDF datasets will change. We evaluate a framework that extracts features from the query and/or from past versions of the target dataset and inputs them into binary classi ers to predict whether or not the results for a query will change at a xed point in the near future. For this evaluation, we create a gold standard based on 23 versions of Wikidata and a curated collection of 221 SPARQL queries. Our results show that the quality of predictions possible using (only) features based on the query structure and lightweight statistics of the predicate dynamics { though capable of beating a random baseline { are not competitive with results obtained using (more costly to derive) knowledge of the complete historical changes in the query results.</p>
      </abstract>
      <kwd-group>
        <kwd>SPARQL • Linked Data • Dynamics • Wikidata</kwd>
      </kwd-group>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>Introduction</title>
      <p>Many applications that consume Linked Data (LD) face challenges related to
remote changes in the underlying data. Client-side caches can reduce the network
tra c between clients and servers, the load on servers, and the average latency of
responses. However, since datasets change over time, for caches to be useful, they
should be updated when the underlying data that they re ect change; predicting
such remote changes, however, is a challenging problem, particularly when data
are accessed as the results of queries to a SPARQL endpoint.</p>
      <p>
        Since datasets change over time, long-running applications that cache and
repeatedly use query results obtained from an external SPARQL endpoint may
resubmit the queries regularly to ensure up-to-dateness. As a result, without
further information as to the dynamics of a particular SPARQL query, applications
face the choice of either performing frequent query executions that may be
redundant and repeatedly return the same results (aiming for stronger consistency
at the cost of more frequent querying), or performing infrequent query
executions that may lead to stale data being persisted in the application when the
underlying sources change (accepting weaker consistency to improve e
ciency/scalability). Given the costs for clients and servers of repetitive requests served
over the Web and the potential e ciency gains o ered by local caches, several
Copyright © 2019 for this paper by its authors. Use permitted under Creative Commons License Attribution 4.0 International (CC BY 4.0)
weak consistency approaches have been proposed that try to keep the local data
of the applications updated at lower cost by predicting changes [
        <xref ref-type="bibr" rid="ref15 ref23 ref6">15,6,23</xref>
        ].
      </p>
      <p>
        Some works study data dynamics based on the historical evolution of
entities [
        <xref ref-type="bibr" rid="ref13 ref21 ref7">13,7,21</xref>
        ], but following such an approach for SPARQL queries is expensive
because (1) a SPARQL query may involve potentially many entities; and (2)
it is necessary to have the previous complete versions of data to analyse the
entities relevant to a query. Many works have explored the dynamics of Linked
Data with the intention of nding patterns that allow for characterizing,
recognizing, and predicting changes based on analysis of the domains, predicates,
and schema [
        <xref ref-type="bibr" rid="ref11 ref13 ref22 ref23 ref27">27,13,22,23,11</xref>
        ]. Among these works are hybrid approaches
developed to return fresher query results with faster response times by decomposing
a query into dynamic sub-queries executed remotely, and static sub-queries
executed over local caches [
        <xref ref-type="bibr" rid="ref29">29</xref>
        ], but such an approach only focuses on estimating the
dynamics of individual triple patterns, and does not consider, for example, query
operators. More generally, coping with changes in remote data still presents a
major challenge for applications leveraging dynamic Linked Data.
      </p>
      <p>Given a SPARQL query and a dynamic RDF graph (consisting of multiple
historical versions), in this work, we address the problem of predicting whether
or not the query's results will change in the next version of the RDF graph.</p>
      <p>To the best of our knowledge, this is the rst work to address this problem.</p>
      <p>Along these lines, we evaluate a general architecture based on Machine Learning
that extracts static features from a query, as well as features from the query
and dynamic dataset. These features are fed into a binary classi er to predict
whether or not the query results will change in a xed point in the future,
or, more ambitiously, can be fed into a regression model to predict when the
query results are likely to change. With respect to the features used, we show
that there is a trade-o between those that are easy to compute but o er less
accurate predictions (e.g., static query features) versus those that are more costly
to compute but o er more accurate predictions (e.g., historical changes in query
results). Per this trade-o , which features to use for predicting the dynamics of
query results may then depend on the particular application.</p>
      <p>
        In order to better understand this conceptual trade-o { and more generally,
to evaluate the quality of predictions made by our framework { we create a
novel gold standard based on 23 weekly versions of the Wikidata knowledge
graph [
        <xref ref-type="bibr" rid="ref33">33</xref>
        ] and 221 user-generated queries; we show this gold standard to have a
variety of desirable features, including (most importantly) a balance of queries
whose results never change, always change, as well as non-trivial queries whose
results intermittently change. Using this gold standard, our experiments show
that although features based on static characteristics of the query and statistics
of changes in the data for individual predicates are more e cient to compute
and maintain, they do not o er the same prediction quality as features based on
knowledge of historical changes of the input query's results.
      </p>
      <p>Contributions: (1) We evaluate a general architecture for predicting when/if the
results of a SPARQL query will change in a future version of a dynamic RDF
dataset. (2) We evaluate a number of features to instantiate this architecture
based on analysis of the query, analysis of the dynamics of predicates in the
data, and analysis of historical changes in the query results. (3) We create a gold
standard for these tasks based on 23 consecutive versions of Wikidata and a set
of 221 real-world SPARQL queries. (4) We use this gold standard to compare
the predictions obtained using di erent types of features and classi ers.
2</p>
    </sec>
    <sec id="sec-2">
      <title>Related Work</title>
      <p>
        A variety of works have addressed the issue of modeling and consuming dynamic
Linked Data from a broad range of perspectives [
        <xref ref-type="bibr" rid="ref11 ref12 ref13 ref14 ref22 ref24 ref26 ref27 ref30 ref8 ref9">24,26,27,30,13,9,12,8,14,22,11</xref>
        ].
One of the major challenges considered is that of keeping cached copies of remote
dynamic data { cached for reasons of e ciency and scalability { up-to-date on
the consumer side, which we refer to as the synchronization problem.
      </p>
      <p>
        Some works have addressed the synchronization problem on the publisher
side, proposing noti cation mechanisms that keep registered consumers informed
about relevant changes to the data [
        <xref ref-type="bibr" rid="ref10 ref12 ref16 ref18 ref24 ref26">18,24,26,16,12,10</xref>
        ]; although such approaches
may facilitate strong consistency { meaning that consumers are kept up-to-date
with the remote data on the publisher side { they centralize the burden of
synchronization on the publisher, potentially leading to scalability issues.
      </p>
      <p>
        Conversely, a variety of works have looked at building models of remote data
that can help to predict which data are most dynamic, and which are most
static, indicating which subsets of the data may need be refreshed from the
remote source more often [
        <xref ref-type="bibr" rid="ref11 ref13 ref22 ref24 ref26 ref27 ref30 ref9">24,26,27,30,13,9,22,11</xref>
        ]; such works consider changes in
RDF datasets at di ering levels of granularity, including documents [
        <xref ref-type="bibr" rid="ref13">13</xref>
        ],
domains [
        <xref ref-type="bibr" rid="ref13 ref22 ref23">13,22,23</xref>
        ], predicates [
        <xref ref-type="bibr" rid="ref13 ref23">13,23</xref>
        ], characteristic sets1 [
        <xref ref-type="bibr" rid="ref11 ref22">22,11</xref>
        ], etc. Features at
di erent levels of granularity can be fed into di erent predictive models based
on Poisson Processes [
        <xref ref-type="bibr" rid="ref27">27</xref>
        ], Markov Chains [
        <xref ref-type="bibr" rid="ref32">32</xref>
        ], Empirical Distributions [
        <xref ref-type="bibr" rid="ref19">19</xref>
        ],
Machine Learning classi cation and regression [
        <xref ref-type="bibr" rid="ref11 ref23">23,11</xref>
        ], as well as a variety of other
heuristics [
        <xref ref-type="bibr" rid="ref15 ref2 ref32">2,32,15</xref>
        ] and metrics [
        <xref ref-type="bibr" rid="ref1 ref15 ref6">6,15,1</xref>
        ]. Such approaches obviate the need for a
subscription/noti cation mechanism. However, to ensure strong consistency in
the presence of highly dynamic data, consumers may need to conservatively send
a great many refresh requests to the server, which may be even more costly than
a subscription/noti cation mechanism; hence such approaches are better suited
for scenarios where weak consistency is more acceptable.
      </p>
      <p>
        Speci cally regarding the dynamics of SPARQL query results, Passant and
Mendes [
        <xref ref-type="bibr" rid="ref24">24</xref>
        ] proposed sparqlPuSH as a noti cation framework based on
PubSubHubBub (recently standardized as WebSub [
        <xref ref-type="bibr" rid="ref10">10</xref>
        ]) aiming for strong
consistency. Rather aiming for weak consistency, Umbrich et al. [
        <xref ref-type="bibr" rid="ref28 ref29 ref31">29,31,28</xref>
        ] proposed
various methods to obtain knowledge about dynamics for di erent query
patterns, mainly based on predicates. Dehghanzadeh et al. [
        <xref ref-type="bibr" rid="ref5">5</xref>
        ] later proposed a
method to estimate the freshness using cardinality estimation techniques based
on predicates and characteristic sets. Combining the notion of subscription-based
noti cations and predicting dynamics, Knuth et al. [
        <xref ref-type="bibr" rid="ref15">15</xref>
        ] propose a middleware to
1 A characteristic set is the set of predicate terms used to describe a given subject [
        <xref ref-type="bibr" rid="ref20">20</xref>
        ].
which consumers may subscribe that periodically ranks and schedules refreshes
for queries according to policies that take into account how likely the results
are to be stale, how long ago the query was last refreshed, how many results
previously changed, how long the query takes to run, etc.
      </p>
      <p>
        Novelty: Given a query and a dynamic RDF dataset, we aim to predict whether
or not the query's results will have changed in a xed point in the near future.
Our work thus complements existing works aiming for weak consistency, but (i)
generalizes the problem, evaluating a framework that can incorporate statistics
on predicate dynamics [
        <xref ref-type="bibr" rid="ref28 ref29 ref31 ref5">29,31,28,5</xref>
        ] and historical changes in query results [
        <xref ref-type="bibr" rid="ref15">15</xref>
        ]
(as proposed in prior works for addressing related but yet distinct problems
relating to dynamic data), as well as novel types of features, (ii) introduces
new features based on query operators and statistics; (iii) creates a novel gold
standard based on Wikidata and presents comparative results that indicate the
relative predictive power inherent in di erent types of features.
3
      </p>
    </sec>
    <sec id="sec-3">
      <title>Preliminaries: RDF and SPARQL</title>
      <p>RDF is a conceptual data model based on directed graphs that can be used to
describe resources on the Web. RDF terms are elements of the set I [ B [ L
composed of IRIs I, literals L, and blank nodes B. A tuple (s; p; o) 2 (I [ B)
(I) (I [ B [ L) is called an RDF triple, where s is called subject, p is called
predicate, and o is called object. An RDF graph is a set of RDF triples.</p>
      <p>
        SPARQL is the recommended query language to retrieve and manipulate data
stored in the RDF format. In this work, we focus on SPARQL SELECT queries,
where we will rst de ne a SPARQL 1.0 query. Let V be a set of variables
disjoint from the set of RDF terms. A SPARQL expression is built recursively
as follows. (1) A triple pattern t 2 (I [ B [ L [ V) (I [ V) (I [ L [ B [ V) is an
expression. (2) If Q1 and Q2 are expressions and R is a lter condition, then Q1
FILTER R, Q1 UNION Q2, Q1 OPTIONAL Q2, Q1 AND Q2 are expressions. Finally,
if Q is an expression, V a list of variables and a boolean value, SELECTV Q is
a SPARQL SELECT query, where V denotes the projected variables, and the
DISTINCT option that when true, removes duplicate results. The semantics of
a SPARQL SELECT query Q is de ned in terms of its evaluation over an RDF
graph G, denoted Q(G), giving a set of partial mappings from projected variables
to the set I [ L [ B; we refer to Perez et al. [
        <xref ref-type="bibr" rid="ref25">25</xref>
        ] for de nitions. (A SPARQL
query is in fact evaluated over a set of named graphs; though we consider RDF
graphs here, our methods also generalize to the named graphs setting.)
      </p>
      <p>Our method supports SPARQL 1.1 SELECT queries, which allow a variety of
additional features. One key feature in this extension is that of property paths,
which allows for matching arbitrary length paths in an RDF graph, potentially
returning or matching the endpoints of the path. An IRI p is a path expression; if
e, e1 and e2 are path expressions, then ^e (inverse of e), e1/e2 (e1 followed by e2),
e1|e2 (e1 or e2), e* (zero or more e), e+ (one or more e), e? (zero or one e), and
(e) (parentheses used for precedence) are also path expressions ; nally, if p, p1,
: : : ; pn are IRIs, then !p, !(p1| : : : |pn) and !(p1| : : : |pk|^pk+1| : : : |^pn) for
k +1 n (negated property sets) are path expressions. Thereafter, a path pattern
(s; e; o) where e is a path expression is an expression. Other features supported
in SPARQL 1.1 include sub-queries, negation, aggregation, value binding, and
so forth; for brevity, we do not introduce de nitions for all such features.</p>
      <p>
        One topic we do wish to highlight, however { as it relates to the behavior of
a query over a dynamic RDF graph { is that of the monotonicity of SPARQL
queries [
        <xref ref-type="bibr" rid="ref3 ref4">3,4</xref>
        ]. We say that a SELECT query Q is monotone if and only if G1 G2
implies that Q(G1) Q(G2) for RDF graphs G1 and G2; intuitively, as data
are extended, the results of a monotone query can only be extended. Monotonic
SPARQL features include, for example, joins, unions, paths and lters; on the
other hand, non-monotonic SPARQL features include negation and optional [
        <xref ref-type="bibr" rid="ref3">3</xref>
        ].
4
      </p>
    </sec>
    <sec id="sec-4">
      <title>Predicting the Dynamics of Query Results</title>
      <p>We consider a dynamic RDF graph to be a sequence of n discrete versions of an
RDF graph denoted G := (G1; : : : ; Gn); in practice, we assume these versions to
have regular intervals (e.g., hourly, daily, weekly, etc.). Further given a SPARQL
(1.1) SELECT query Q, we would like to have knowledge of the dynamics of its
results. The speci c problem we consider in this work { which we call One Shot
Change (OSC) { accepts G, Q and a positive integer k as input and outputs a
boolean value predicting whether or not the results will change from Gn to some
future version Gn+k (i.e., Q(Gn) 6= Q(Gn+k)?). In the case of bag semantics, we
de ne \6=" in terms of bag inequality, meaning that two bags of query results
are di erent if the multiplicity of any result di ers. We thus currently focus on
predicting if the results of a query will change, rather than predicting when, or
to what extent, they will change; these latter problems are left for future work.
Architecture: In Figure 1, we provide an overview of a general architecture for
making predictions with respect to the OSC prediction task. A SPARQL query
Q and a dynamic RDF graph G are given as input. The Query Feature Extractor
extracts static features from the query, which include statistics about the number
of elements in the query (e.g., number of triple patterns, variables, etc.) as well
as the presence of particular query operators (e.g., UNION, FILTER, recursive path
expressions, etc.). The Predicate Feature Extractor takes as input the predicates
from the query and statistics about those predicates from the dynamic graph to
produce a set of aggregated numerical features about the dynamicity of
predicates used in the query. The Result Feature Extractor takes as input the results
of the query over past versions of the dynamic graph from which it produces
further features. All such features are passed to a (pre-trained) binary classi er
to generate the nal OSC prediction. We will now describe in more detail the
query, data and result features considered in this work.</p>
      <p>Query Features: Our initial set of features is based on static analysis of the input
SPARQL query. Figure 2 shows only a sample of evaluated features, as well as
{ for the purposes of illustration { their values for an example query.</p>
      <p>Q</p>
      <p>G
Q(G)</p>
      <sec id="sec-4-1">
        <title>Query</title>
      </sec>
      <sec id="sec-4-2">
        <title>Feature</title>
      </sec>
      <sec id="sec-4-3">
        <title>Extractor</title>
      </sec>
      <sec id="sec-4-4">
        <title>Predicate</title>
      </sec>
      <sec id="sec-4-5">
        <title>Feature</title>
      </sec>
      <sec id="sec-4-6">
        <title>Extractor</title>
      </sec>
      <sec id="sec-4-7">
        <title>Result</title>
      </sec>
      <sec id="sec-4-8">
        <title>Feature Extractor</title>
        <p>The rst group of features captures statistics about the query, indicating
loosely its size and complexity. One might consider that the higher these values
are, in general, the more dynamic we can expect the query to be since there are
more \opportunities" for the query results to be a ected by change. In some
cases, however, the hypothesized correlation is not direct since, for example,
adding more triple patterns may serve to narrow the query down and focus it on
a static part of the graph (e.g., when looking for the movies of directors, adding
a triple pattern to restrict the results to directors who have died may reduce
the likelihood of changes in the results in a future version). Hence it will be of
interest to see, experimentally, how these features a ect the predictions.</p>
        <p>The second group indicates the query operators used; we capture the presence
or absence of query operators and solution modi ers from SPARQL 1.1.</p>
        <p>
          In the third group gathers related features into one dimension: in the case
of Recursive path, we group queries with path expressions of the form e* or e+.
On the other hand, in Negation, we group non-monotonic features that allow
for modeling di erence (MINUS, NOT EXISTS, !BOUND2. These features { though
course-grained { are straightforward to extract from a query, and o er
valuable insights into how the query may behave in a dynamic query; for example,
the Negation feature captures information about the (non-)monotonicity of the
query, while we suppose that Recursive paths, which may traverse an arbitrary
number of triples in the graph, might be more sensitive to change. Again, such
correlations are not without exception and will require empirical study.
Predicate Features: The next component extracts features that capture
information about the dynamics of predicates used in the query (without evaluating
the query on the dynamic graph). This component captures how often and how
many triples change for a predicate in a time interval, with the idea that { as
in previous works [
          <xref ref-type="bibr" rid="ref28 ref29 ref31 ref5">29,31,28,5</xref>
          ] { predicates capture rich information about the
dynamics of a dataset, where the results of queries with dynamic predicates will
be more sensitive to change. Assuming that the number of predicates is relatively
2 We recall that !BOUND can be combined with OPTIONAL to express negation.
7
3
1
6
X
X
X
X
X
X
        </p>
        <p>X
f :instance of, ... g
SELECT ?item
WHERE f
?item :instance_of :human .
?item :gender :female .</p>
        <p>f ?item :place_of_birth :Wales g
UNION
f ?item :place_of_birth ?pob .</p>
        <p>?pob :located_in* :Wales g
OPTIONAL
f ?sitelink schema:about ?item .</p>
        <p>?sitelink schema:inLanguage "cy" g</p>
        <p>FILTER (!BOUND(?sitelink))
g
LIMIT 100
 of triple patterns
 of variables
 of projected variables
 of predicates
FILTER
LIMIT
UNION
GROUPBY
Sub-query
Recursive path
Negation</p>
        <p>Predicates
low, such statistics can be easier to maintain. Formally, given two RDF graphs
Gi and Gj , we denote by Gi Gj the set of triples (Gi [ Gj ) (Gi \ Gj ) where
\ " denotes set di erence; in other words, Gi Gj denotes the triples in one
graph or the other but not both (noting that Gi Gj = Gj Gi). Next, given an
RDF graph G and an IRI p, let #(G; p) := jf(x; y; z) 2 G : y = pgj denote the
number of triples in G with predicate p. Finally, given a dynamic RDF graph
G := (G1; : : : ; Gn) and a predicate p, we denote by (G; p) := in=11 ##((GGii[GGii++11;;pp))
the normalized sum of the number of triples with the predicate p that changed
between pairs of consecutive versions.</p>
        <p>Example 1. Consider the example dynamic RDF graph G in Figure 3 (based on
real data from Wikidata, with IRIs modi ed for the purposes of readability).
In Figure 4 we show the pairwise changes between each version: G1 G2 and
G2 G3. For a predicate p, the value (G; p) is then the sum of triples with
predicate p in the graphs G1 G2 and G2 G3 divided by the number of triples
with predicate p in the graphs G1 [ G2 and G2 [ G3. Looking at Figure 4,
for example, :name does not appear ( (G; :name) = 0), :children appears
twice in G1 G2 and G1 [ G2, as well as, twice in G2 G3 and G2 [ G3
( (G; :children) = 4=4 = 1), and so forth.</p>
        <p>Given a query Q with a set of predicates fpi; :::; png, we may then consider
a variety of aggregate functions over (G; p1); :::; (G; pn), such as max, mean,
etc., to compute a nal numeric feature for the query, representing a summary
of the level of dynamicity of the predicates it contains.</p>
        <p>Result features: The third type of feature we capture indicates how many times
the query results Q have changed over the past versions of the dynamic graph.
While this feature o ers rich information for prediction, given a query that has
not previously been seen, it is costly to compute, since it requires the evaluation
of the query over each past version within an interval, which in turn requires
maintaining indexes over the full data for a variety of past versions.
5</p>
      </sec>
    </sec>
    <sec id="sec-5">
      <title>Gold Standard Dataset</title>
      <p>
        In order to evaluate the e ectiveness for predicting changes in SPARQL query
results, we require a dynamic RDF graph, with access to various historical
versions; preferably this graph contains real-world, large-scale, diverse RDF data,
and with su cient changes between versions to provide both positive and
negative examples of queries whose results change. Furthermore, we require a set of
SPARQL queries that can be answered against this dynamic graph; preferably
these queries again should be diverse, representative of real-world user queries,
of a variety of shapes and sizes, using a variety of query operators, and with a
mix of both dynamic and static results over the dynamic graph. In particular,
we choose Wikidata [
        <xref ref-type="bibr" rid="ref33">33</xref>
        ] for our experiments, which, we shall argue, meets the
aforementioned requirements. We rst give details of the dynamic data we collect
from Wikidata; thereafter, we discuss the queries we use in our experiments.
RDF Data: We use 23 Wikidata snapshots from 18/04/2017 to 27/09/2017,
which are captured (roughly) weekly in the truthy version that contains triples
(without quali ers) that have the best non-deprecated rank for a given property;
this data corpus was previously collected and used by Gonzalez and Hogan [
        <xref ref-type="bibr" rid="ref11">11</xref>
        ].
The rst version has 1,102,242,331 triples and 3,276 unique predicates, while
the nal version has 1,924,967,162 triples (+74%) and 3,660 unique predicates
(+11%). Figure 5, on the left, shows the growth in triples as the time progress,
while on the right, shows the numbers of triples added and removed
version-toversion. We see that although many more triples are added than removed, there
are some triples removed each version. We further note some peaks in triples
added in some versions, which may be due to bulk imports of data. Between
version 11 and 12 we have an almost 2 week gap because we were not able to
obtain the data for that week, but this causes only the third highest peak. The
dynamic graph considers a total of 32.3 billion triples across 23 versions.
      </p>
      <p>Table 1 shows the ten most dynamic predicates according to the number of
added and deleted statements involving that predicate (Total) and the ratio of
added and deleted statements divided by the total number of statements for that
predicate across all snapshots (Dyn); for the latter, we only include predicates
2
1:5
0:5
1
0
109
1
8 107
6
4
2</p>
      <p>Added</p>
      <p>
        Removed
23
that appear in all snapshots and appear in 1,000 statements overall. Though
the largest number of changes involves the predicate schema:description, its
dynamic value is low due to it being a common predicate. On the other hand, the
OWL properties have high dynamicity ratios due to taking blank node values;
we currently do not consider isomorphism of graphs due to blank nodes.
Queries: The corpus collected by Gonzalez and Hogan [
        <xref ref-type="bibr" rid="ref11">11</xref>
        ] does not o er queries.
In order to achieve a set of SPARQL queries that are answerable over Wikidata
and with which we could run experiments, we took the user-contributed example
queries from the Wikidata Query Service3, consisting of 389 SPARQL 1.1 SELECT
queries of varying degrees of complexity, touching upon various domains of data,
and with a mix of varying query operators.
      </p>
      <p>A total of 96 queries had to be removed from the original set of 389
because they asked for information external to Wikidata (using SERVICE) or asked
for quali ers that are not present in the truthy version. We also eliminated 12
queries that returned bindings to blank nodes to facilitate comparison between
3 https://www.wikidata.org/wiki/Wikidata:SPARQL_query_service/queries/
examples
the results. Furthermore, some queries featured non-deterministic elements {
such as LIMIT/OFFSET without ordering, SAMPLE or temporal functions { such as
TODAY() { that may lead to changes in results not related to changes in the data;
we remove 23 queries with SAMPLE and temporal functions, and add an ORDER
BY clause to all queries to ensure determinism with LIMIT/OFFSET and more
generally to facilitate quick comparison of results. We also eliminated 37 queries
with empty results for all snapshots. As a result of this process of ltering, we
end up with a total of 221 non-empty deterministic queries.</p>
      <p>In Table 2, we provide statistics on the distribution of di erent types of triple
patterns in the 221 queries before the transformation; of key importance is that
86.20% of the triple patterns have a constant in the predicate position, meaning
that they are compatible with a model based on the dynamics of predicates. We
also see that 83 triple patterns (11.34%) feature a path expression, where Table 3
provides the distribution of these expressions (remarking that multiple patterns
can be used in one expression); of note here is that recursion is commonly found
(74.70% use e* while 9.64% use e+), and that we nd no negated property paths.</p>
      <p>Finally, we look at how the results for these queries change over the 23
versions. Figure 6 shows how many queries had some results change between
two consecutive versions, where we see that approximately half of the result sets
change in each version. But are these always the same queries that change every
time? Figure 6 shows the number of versions in which some result changed for
each query; the queries are ordered by the number of changes in their results,
where we can see that the results of 44 queries (19.90%) change each time,
17 queries (7.69%) never change, and more generally, we note a quite uniform
distribution of queries in between. More generally speaking, we conclude that
our query set has a good balance of queries whose results never change, queries
whose results always change, and queries whose results sometimes change.</p>
      <p>20
d
e
g
n
a
h
c
son 10
i
s
r
e
V</p>
      <p>0
23
0
100
Query
200
Feature extraction: To compute the query features, we use Apache Jena to parse
the query and extract the necessary statistics and determine the presence of
the relevant query operators. In order to extract statistics on the dynamics of
individual predicates in the dynamic graph, a challenge here is scalability, since
we work with a total of 32.3 billion triples; hence we (1) sort each version of
Wikidata, (2) apply a merge-sort iterator over each pair of consecutive versions
(Gi and Gi+1) to detect triples that changed (Gi Gj ), writing a separate le
for triples that were deleted (Gi Gj ) and added (Gj Gi), (3) from these les,
we can then compute and sum the number of triples changed for each predicate
between each pair of versions. Finally, in order to create the ground truth in
terms of which results change between which versions, we index each version in
Virtuoso and compute the results for each query against each version and write
them to disk; we then compare consecutive pairs of results with a merge-sort.
6</p>
    </sec>
    <sec id="sec-6">
      <title>Evaluation</title>
      <p>Our experiments evaluate the (relative) quality of One Shot Change (OSC)
predictions that can be made based on query features, predicate features, result
features, as well as combinations thereof, using a selection of binary classi ers.
Setting: To build our nal datasets, we must de ne a past interval to consider.
With 23 versions, we must hold out at least one version to predict, leaving a
maximum interval of 22 past versions to use for computing our features. However,
the more past versions we consider for a prediction, the fewer examples we can
generate; for example, if we consider 22 versions, we will only have one ground
truth label for each query. In the end, we opted to consider intervals of 3, 5, 9 and
17 previous versions, for example, in the case of an interval of three versions, we
use (Gi 3; Gi 2; Gi 1) to predict changes in queries results for the subsequent
version (Gi), which allows us to predict OSC from G4 to G23 inclusive, providing
20 labeled examples per query. We thus have 4,420 labeled examples for intervals
of 3, ranging down to 1,326 examples for intervals of 17. No feature explicitly
indicates the versions given or the version to be predicted.</p>
      <p>In the case of predicate dynamics, as discussed in Section 4, there are
potentially many predicates per query, each with its own value for (G; p), where to
reduce (and x) dimensionality, we may apply an aggregate function to choose
the min, max or mean value over all predicates. In preliminary experiments, we
found the mean value to o er the best results, followed by the max value; hence
in what follows we adopt the mean value in our experiments.</p>
      <p>For OSC prediction, we test four binary classi ers: Decision Trees, Linear
SVM, Naive Bayes, and Nearest Neighbors. We split the data to use 80% for
training and 20% for tests. To avoid over tting, we use strati ed 5-fold
crossvalidation. We consider three types of features, as previously described { query
features (q), predicate features (p) and result features (r) { considering
historical data (only) from the xed interval. We also consider combinations of these
features: qp, qr, pr and qpr.</p>
      <p>Results: Table 4 shows the F1-score for the predictions made considering the
union of di erent combinations of the sets of features (q, p, r) and varying the
window sizes (3, 5, 9, 17); for reference, we include a baseline that randomly
guesses yes/no respecting the observed class distribution. Given the number of
con gurations presented, we only include F1 scores for reasons of space; however,
we remark that the Precision and Recall scores were in general quite balanced.
The best results were obtained using the features from r, where, as can be
expected, prediction performs best when knowledge of changes in the historical
results of the input query is available. The features from sets q and p { which
do not assume the availability of such information { obtain a signi cantly lower
F1-score; the best result including r was with pr (F1 = 0:831) using Linear SVM
and window size 17, while the best results without r was with q (F1 = 0:60)
using Linear SVM and window size 5.</p>
      <p>Furthermore, in Figure 8, we show that the size of the window in uences
the quality of the results when considering r features (blue), being better as
the window increases. However, there is no clear trend in the results for
increasing window sizes when considering models without using r features (red). (As
aforementioned, we can see that Precision and Recall results are comparable.)
7</p>
    </sec>
    <sec id="sec-7">
      <title>Summary, Conclusions and Future Work</title>
      <p>In this paper we evaluate methods to predict whether or not (OSC) the results
of an input query will change at a xed point in the near future. More
specifically, we evaluate a framework based on binary classi ers that accept features
extracted from the query, from past versions of the data, and/or from the
combination of both. Considering this framework, we hypothesize that there is a
conceptual trade-o between the cost of computing features and their value for
prediction: features extracted from queries alone are the most e cient to extract,
not requiring historical data, but are quite coarse-grained for prediction; on the
Classi er</p>
      <p>q</p>
      <sec id="sec-7-1">
        <title>Random Baseline 0.499</title>
        <p>Decision Trees 0.497
Naive Bayes 0.432
Nearest Neighbors 0.505
Linear SVM 0.596</p>
      </sec>
      <sec id="sec-7-2">
        <title>Random Baseline 0.480</title>
        <p>Decision Trees 0.485
Naive Bayes 0.431
Nearest Neighbors 0.517
Linear SVM 0.600</p>
      </sec>
      <sec id="sec-7-3">
        <title>Random Baseline 0.497</title>
        <p>Decision Trees 0.456
Naive Bayes 0.434
Nearest Neighbors 0.514</p>
        <p>Linear SVM 0.578
other hand, features based on changes in results over previous versions for an
(unseen) input query are often the most costly to acquire, but o er ne-grained
information for prediction; nally, features based on the dynamics of predicates
o er a balance between the two, allowing to summarize historical data into
succinct statistics, thus o ering more ne-grained information than static query
features but more coarse-grained information than historical results.</p>
        <p>We thus explore this trade-o experimentally using 23 versions and 221
usercontributed queries for Wikidata to form a gold standard dataset. We use this
gold standard dataset to evaluate the trade-o identi ed between di erent types
of features for OSC predictions. Our results show that the features based on
historical changes to query results perform best (reaching F1 = 0:831 in the best
con guration), whereas considering static query features and predicate dynamics
alone is less competitive (reaching F1 = 0:600 in the best con guration) when
historical results are not available or are prohibitively costly to compute.
Com1
0:8
0:6
0:4
0:2
0 3 5
9
F1
17</p>
        <p>9
Precision
17
9
Recall
17
paring query and predicate features, in fact, query features performed better,
where predicate features alone only barely outperformed a random baseline.</p>
        <p>In conclusion, our results show that having knowledge of the historical changes
of the results of a query is important for improving the quality of OSC predictions
using binary classi ers. However, in many scenarios, such knowledge is often not
available or may not be practical to compute. Considering a real-world caching
use-case, for example, historical changes in results may be maintained for queries
that are frequently repeated with relatively low-cost, but for a previously unseen
query, computing results for past versions at runtime would incur a prohibitive
cost. Hence, we identify an open research question: is it possible to estimate the
dynamics of query results without relying on (costly) knowledge about historical
changes of query results while staying competitive with the quality of prediction
possible when such knowledge is available?</p>
        <p>
          Regarding future work, our gold standard based on Wikidata could be
extended to consider more versions spanning a longer period of time and/or more
queries; a very large query dataset for Wikidata was recently published [
          <xref ref-type="bibr" rid="ref17">17</xref>
          ],
which may be of use here. Building gold standards based on other datasets would
also help to diversify the evaluation process. Concerning the prediction tasks
themselves, one promising direction may be to apply a more ne-grained
analysis of the query, considering (for example) the selectivity of particular triples
patterns as well as their dynamicity. There may also be better ways to perform
such predictions without relying on binary classi ers, but rather using more
analytical methods. Finally, it would be interesting to investigate the e
ectiveness of these techniques in practice, developing caching systems, synchronization
schedules, and other applications, based on the evaluated predictions.
Material We make supplementary material (queries, data, results, etc.) available
at https://users.dcc.uchile.cl/~amoya/quweda2019/.
        </p>
        <p>Acknowledgements This work was supported by the Millennium Institute for
Foundational Research on Data (IMFD), by Fondecyt Grant No. 1181896 and
by CONICYT PFCHA/Doctorado Nacional/2017 - 21171070.</p>
      </sec>
    </sec>
  </body>
  <back>
    <ref-list>
      <ref id="ref1">
        <mixed-citation>
          1.
          <string-name>
            <surname>Akhtar</surname>
            ,
            <given-names>U.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Amin</surname>
            ,
            <given-names>M.B.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Lee</surname>
            ,
            <given-names>S.</given-names>
          </string-name>
          :
          <article-title>Evaluating scheduling strategies in LOD based application</article-title>
          . In:
          <article-title>Asia-Paci c Network Operations and Management Symposium, APNOMS</article-title>
          . IEEE (
          <year>2017</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref2">
        <mixed-citation>
          2.
          <string-name>
            <surname>Alici</surname>
            ,
            <given-names>S.</given-names>
          </string-name>
          , Altingovde,
          <string-name>
            <given-names>I.S.</given-names>
            ,
            <surname>Ozcan</surname>
          </string-name>
          ,
          <string-name>
            <given-names>R.</given-names>
            ,
            <surname>Cambazoglu</surname>
          </string-name>
          ,
          <string-name>
            <given-names>B.B.</given-names>
            ,
            <surname>Ulusoy</surname>
          </string-name>
          ,
          <string-name>
            <surname>O</surname>
          </string-name>
          .
          <article-title>: Adaptive time-to-live strategies for query result caching in web search engines</article-title>
          .
          <source>In: European Conference on IR Research</source>
          , ECIR. Springer (
          <year>2012</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref3">
        <mixed-citation>
          3.
          <string-name>
            <surname>Arenas</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Perez</surname>
          </string-name>
          , J.:
          <article-title>Querying semantic web data with SPARQL</article-title>
          .
          <source>In: Principles of Database Systems (PODS)</source>
          .
          <source>ACM</source>
          (
          <year>2011</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref4">
        <mixed-citation>
          4.
          <string-name>
            <surname>Arenas</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Ugarte</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          :
          <article-title>Designing a query language for RDF: marrying open and closed worlds</article-title>
          .
          <source>ACM Trans. Database Syst</source>
          .
          <volume>42</volume>
          (
          <issue>4</issue>
          ) (
          <year>2017</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref5">
        <mixed-citation>
          5.
          <string-name>
            <surname>Dehghanzadeh</surname>
            ,
            <given-names>S.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Parreira</surname>
            ,
            <given-names>J.X.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Karnstedt</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Umbrich</surname>
            ,
            <given-names>J.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Hauswirth</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Decker</surname>
            ,
            <given-names>S.</given-names>
          </string-name>
          :
          <article-title>Optimizing SPARQL query processing on dynamic and static data based on query time/freshness requirements using materialization</article-title>
          . In: Joint International Conference, JIST. Springer (
          <year>2014</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref6">
        <mixed-citation>
          6.
          <string-name>
            <surname>Dividino</surname>
            ,
            <given-names>R.Q.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Gottron</surname>
            ,
            <given-names>T.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Scherp</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          :
          <article-title>Strategies for e ciently keeping local linked open data caches up-to-date</article-title>
          .
          <source>In: International Semantic Web Conference ISWC</source>
          . Springer (
          <year>2015</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref7">
        <mixed-citation>
          7.
          <string-name>
            <surname>Dividino</surname>
            ,
            <given-names>R.Q.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Gottron</surname>
            ,
            <given-names>T.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Scherp</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          , Groner, G.:
          <article-title>From changes to dynamics: Dynamics analysis of linked open data sources</article-title>
          .
          <source>In: Extended Semantic Web Conference, PROFILES@ESWC</source>
          <year>2014</year>
          (
          <year>2014</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref8">
        <mixed-citation>
          8.
          <string-name>
            <surname>Dividino</surname>
            ,
            <given-names>R.Q.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Kramer</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Gottron</surname>
            ,
            <given-names>T.</given-names>
          </string-name>
          :
          <article-title>An investigation of HTTP header information for detecting changes of linked open data sources</article-title>
          .
          <source>In: European Semantic Web Conference (ESWC)</source>
          . Springer (
          <year>2014</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref9">
        <mixed-citation>
          9.
          <string-name>
            <surname>Dividino</surname>
            ,
            <given-names>R.Q.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Scherp</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          , Groner, G.,
          <string-name>
            <surname>Grotton</surname>
            ,
            <given-names>T.</given-names>
          </string-name>
          :
          <article-title>Change-a-lod: Does the schema on the linked data cloud change or not?</article-title>
          <source>In: Workshop on Consuming Linked Data, COLD. CEUR-WS.org</source>
          (
          <year>2013</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref10">
        <mixed-citation>
          10.
          <string-name>
            <surname>Genestoux</surname>
            ,
            <given-names>J.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Fitzpatrick</surname>
            ,
            <given-names>B.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Slatkin</surname>
            ,
            <given-names>B.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Atkins</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          :
          <string-name>
            <surname>WebSub. W3C Recommendation</surname>
          </string-name>
          (
          <year>Jan 2018</year>
          ), https://www.w3.org/TR/websub/
        </mixed-citation>
      </ref>
      <ref id="ref11">
        <mixed-citation>
          11.
          <string-name>
            <surname>Gonzalez</surname>
            ,
            <given-names>L.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Hogan</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          :
          <article-title>Modelling dynamics in semantic web knowledge graphs with formal concept analysis</article-title>
          .
          <source>In: World Wide Web Conference. ACM</source>
          (
          <year>2018</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref12">
        <mixed-citation>
          12. Iban~ez, L.D.,
          <string-name>
            <surname>Skaf-Molli</surname>
            ,
            <given-names>H.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Molli</surname>
            ,
            <given-names>P.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Corby</surname>
            ,
            <given-names>O.</given-names>
          </string-name>
          :
          <article-title>Col-graph: Towards writable and scalable linked open data</article-title>
          .
          <source>In: International Semantic Web Conference (ISWC)</source>
          . pp.
          <volume>325</volume>
          {
          <fpage>340</fpage>
          . Springer (
          <year>2014</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref13">
        <mixed-citation>
          13. Kafer, T.,
          <string-name>
            <surname>Abdelrahman</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Umbrich</surname>
            , J.,
            <given-names>O</given-names>
          </string-name>
          <string-name>
            <surname>'Byrne</surname>
            ,
            <given-names>P.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Hogan</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          :
          <article-title>Observing linked data dynamics</article-title>
          .
          <source>In: Extended Semantic Web Conference</source>
          , ESWC. Springer (
          <year>2013</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref14">
        <mixed-citation>
          14.
          <string-name>
            <surname>Kjernsmo</surname>
            ,
            <given-names>K.</given-names>
          </string-name>
          :
          <article-title>A survey of HTTP caching implementations on the open semantic web</article-title>
          .
          <source>In: European Semantic Web Conference</source>
          , ESWC. Springer (
          <year>2015</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref15">
        <mixed-citation>
          15.
          <string-name>
            <surname>Knuth</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Hartig</surname>
            ,
            <given-names>O.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Sack</surname>
          </string-name>
          , H.:
          <article-title>Scheduling refresh queries for keeping results from a SPARQL endpoint up-to-date (short paper)</article-title>
          . In: Confederated International Conferences: CoopIS,
          <string-name>
            <surname>C</surname>
          </string-name>
          &amp;TC, and ODBASE. Springer (
          <year>2016</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref16">
        <mixed-citation>
          16.
          <string-name>
            <surname>Mader</surname>
            ,
            <given-names>C.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Martin</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Stadler</surname>
            ,
            <given-names>C.</given-names>
          </string-name>
          :
          <article-title>Facilitating the exploration and visualization of linked data</article-title>
          .
          <source>In: Linked Open Data - Creating Knowledge Out of Interlinked Data - Results of the LOD2 Project</source>
          . Springer (
          <year>2014</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref17">
        <mixed-citation>
          17.
          <string-name>
            <surname>Malyshev</surname>
            ,
            <given-names>S.</given-names>
          </string-name>
          , Krotzsch,
          <string-name>
            <given-names>M.</given-names>
            ,
            <surname>Gonzalez</surname>
          </string-name>
          ,
          <string-name>
            <given-names>L.</given-names>
            ,
            <surname>Gonsior</surname>
          </string-name>
          ,
          <string-name>
            <given-names>J.</given-names>
            ,
            <surname>Bielefeldt</surname>
          </string-name>
          ,
          <string-name>
            <surname>A.</surname>
          </string-name>
          :
          <article-title>Getting the most out of Wikidata: Semantic technology usage in Wikipedia's knowledge graph</article-title>
          .
          <source>In: International Semantic Web Conference (ISWC)</source>
          (
          <year>2018</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref18">
        <mixed-citation>
          18.
          <string-name>
            <surname>Missier</surname>
            ,
            <given-names>P.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Alper</surname>
            ,
            <given-names>P.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Corcho</surname>
            ,
            <given-names>O.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Dunlop</surname>
            ,
            <given-names>I.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Goble</surname>
            ,
            <given-names>C.A.</given-names>
          </string-name>
          :
          <article-title>Requirements and services for metadata management</article-title>
          .
          <source>IEEE Internet Computing</source>
          (
          <year>2007</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref19">
        <mixed-citation>
          19.
          <string-name>
            <surname>Neumaier</surname>
            ,
            <given-names>S.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Umbrich</surname>
          </string-name>
          , J.:
          <article-title>Measures for assessing the data freshness in open data portals</article-title>
          . In: Open and
          <article-title>Big Data, OBD</article-title>
          . IEEE Computer Society (
          <year>2016</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref20">
        <mixed-citation>
          20.
          <string-name>
            <surname>Neumann</surname>
            ,
            <given-names>T.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Moerkotte</surname>
          </string-name>
          , G.:
          <article-title>Characteristic sets: Accurate cardinality estimation for RDF queries with multiple joins</article-title>
          .
          <source>In: International Conference on Data Engineering</source>
          , ICDE. IEEE Computer Society (
          <year>2011</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref21">
        <mixed-citation>
          21.
          <string-name>
            <surname>Nishioka</surname>
            ,
            <given-names>C.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Scherp</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          :
          <article-title>Temporal patterns and periodicity of entity dynamics in the linked open data cloud</article-title>
          . In:
          <article-title>Conference on Knowledge Capture, K-CAP</article-title>
          .
          <source>ACM</source>
          (
          <year>2015</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref22">
        <mixed-citation>
          22.
          <string-name>
            <surname>Nishioka</surname>
            ,
            <given-names>C.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Scherp</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          :
          <article-title>Information-theoretic analysis of entity dynamics on the linked open data cloud</article-title>
          . In: International Workshop on Dataset PROFIling and
          <article-title>fEderated Search for Linked Data (PROFILES '16) ESWC</article-title>
          .
          <article-title>CEUR-WS.org (</article-title>
          <year>2016</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref23">
        <mixed-citation>
          23.
          <string-name>
            <surname>Nishioka</surname>
            ,
            <given-names>C.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Scherp</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          :
          <article-title>Keeping linked open data caches up-to-date by predicting the life-time of RDF triples</article-title>
          .
          <source>In: Conference on Web Intelligence. ACM</source>
          (
          <year>2017</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref24">
        <mixed-citation>
          24.
          <string-name>
            <surname>Passant</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Mendes</surname>
            ,
            <given-names>P.N.</given-names>
          </string-name>
          <article-title>: sparqlpush: Proactive noti cation of data updates in RDF stores using pubsubhubbub</article-title>
          . In: Workshop on Scripting and
          <article-title>Development for the Semantic Web</article-title>
          .
          <article-title>CEUR-WS.org (</article-title>
          <year>2010</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref25">
        <mixed-citation>
          25.
          <string-name>
            <surname>Perez</surname>
            ,
            <given-names>J.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Arenas</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Gutierrez</surname>
            ,
            <given-names>C.</given-names>
          </string-name>
          :
          <article-title>Semantics and complexity of SPARQL</article-title>
          .
          <source>ACM Trans. Database Syst</source>
          . (
          <year>2009</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref26">
        <mixed-citation>
          26.
          <string-name>
            <surname>Tramp</surname>
            ,
            <given-names>S.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Frischmuth</surname>
            ,
            <given-names>P.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Ermilov</surname>
            ,
            <given-names>T.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Auer</surname>
            ,
            <given-names>S.</given-names>
          </string-name>
          :
          <article-title>Weaving a social data web with semantic pingback</article-title>
          . In:
          <article-title>Knowledge Engineering and Management by the Masses -</article-title>
          EKAW. Springer (
          <year>2010</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref27">
        <mixed-citation>
          27.
          <string-name>
            <surname>Umbrich</surname>
            ,
            <given-names>J.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Hausenblas</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Hogan</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Polleres</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Decker</surname>
            ,
            <given-names>S.</given-names>
          </string-name>
          :
          <article-title>Towards dataset dynamics: Change frequency of linked open data sources</article-title>
          .
          <source>In: WWW2010 Workshop on Linked Data on the Web, LDOW. CEUR-WS.org</source>
          (
          <year>2010</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref28">
        <mixed-citation>
          28.
          <string-name>
            <surname>Umbrich</surname>
            ,
            <given-names>J.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Karnstedt</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Hogan</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Parreira</surname>
            ,
            <given-names>J.X.</given-names>
          </string-name>
          :
          <article-title>Freshening up while staying fast: Towards hybrid SPARQL queries</article-title>
          . In:
          <article-title>Knowledge Engineering and Knowledge Management, EKAW</article-title>
          . Springer (
          <year>2012</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref29">
        <mixed-citation>
          29.
          <string-name>
            <surname>Umbrich</surname>
            ,
            <given-names>J.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Karnstedt</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Hogan</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Parreira</surname>
            ,
            <given-names>J.X.</given-names>
          </string-name>
          :
          <article-title>Hybrid SPARQL queries: Fresh vs. fast results</article-title>
          . In: International Semantic Web Conference,ISWC. Springer (
          <year>2012</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref30">
        <mixed-citation>
          30.
          <string-name>
            <surname>Umbrich</surname>
            ,
            <given-names>J.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Karnstedt</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Land</surname>
            ,
            <given-names>S.</given-names>
          </string-name>
          :
          <article-title>Towards understanding the changing web: Mining the dynamics of linked-data sources and entities</article-title>
          . In: LWA 2010 - Lernen, Wissen &amp; Adaptivitat, Workshop (
          <year>2010</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref31">
        <mixed-citation>
          31.
          <string-name>
            <surname>Umbrich</surname>
            ,
            <given-names>J.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Karnstedt</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Parreira</surname>
            ,
            <given-names>J.X.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Polleres</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Hauswirth</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          :
          <article-title>Linked data and live querying for enabling support platforms for web dataspaces</article-title>
          . In: International Conferenceon Data Engineering, ICDE. IEEE (
          <year>2012</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref32">
        <mixed-citation>
          32.
          <string-name>
            <surname>Umbrich</surname>
            ,
            <given-names>J.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Mrzelj</surname>
            ,
            <given-names>N.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Polleres</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          :
          <article-title>Towards capturing and preserving changes on the web of data</article-title>
          .
          <source>In: European Semantic Web Conference ESWC</source>
          (
          <year>2015</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref33">
        <mixed-citation>
          33.
          <string-name>
            <surname>Vrandecic</surname>
            ,
            <given-names>D.</given-names>
          </string-name>
          , Krotzsch, M.:
          <article-title>Wikidata: a free collaborative knowledgebase</article-title>
          .
          <source>Commun. ACM</source>
          <volume>57</volume>
          (
          <issue>10</issue>
          ),
          <volume>78</volume>
          {
          <fpage>85</fpage>
          (
          <year>2014</year>
          )
        </mixed-citation>
      </ref>
    </ref-list>
  </back>
</article>