<!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>Remembering the Important Things: Semantic Importance in Stream Reasoning</article-title>
      </title-group>
      <contrib-group>
        <contrib contrib-type="author">
          <string-name>Rui Yan</string-name>
          <email>yanr2@rpi.edu</email>
          <xref ref-type="aff" rid="aff1">1</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Mark T. Greaves</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>William P. Smith</string-name>
          <email>William.Smithg@pnnl.gov</email>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Deborah L. McGuinness</string-name>
          <xref ref-type="aff" rid="aff1">1</xref>
        </contrib>
        <aff id="aff0">
          <label>0</label>
          <institution>Paci c Northwest National Laboratory</institution>
          ,
          <addr-line>Richland, WA</addr-line>
          ,
          <country country="US">USA</country>
        </aff>
        <aff id="aff1">
          <label>1</label>
          <institution>Tetherless World Constellation, Department of Computer Science, Rensselaer Polytechnic Institute</institution>
          ,
          <addr-line>Troy, NY</addr-line>
          ,
          <country country="US">USA</country>
        </aff>
      </contrib-group>
      <abstract>
        <p>Reasoning and querying over data streams rely on the ability to deliver a sequence of stream snapshots to the processing algorithms. These snapshots are typically provided using windows as views into streams and associated window management strategies. In this work, we explore a general notion of semantic importance that can be used for window management of RDF streaming data using semantically-aware processing algorithms. Semantic importance exploits the information in RDF streams and surrounding ontologies for ranking window data in terms of its contribution to solution mappings. We also consider how a stream window management strategy based on semantic importance could improve overall processing performance, especially as available window sizes decrease.</p>
      </abstract>
      <kwd-group>
        <kwd>semantic importance</kwd>
        <kwd>stream reasoning</kwd>
        <kwd>RDF</kwd>
        <kwd>cache</kwd>
        <kwd>bu er</kwd>
        <kwd>window</kwd>
      </kwd-group>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>-</title>
      <p>
        Stream reasoning has been proposed with the goal of bridging both
semantic reasoning and stream processing [
        <xref ref-type="bibr" rid="ref9">9</xref>
        ]. In stream reasoning, streaming data
are referred as \RDF streams" [
        <xref ref-type="bibr" rid="ref3">3</xref>
        ][
        <xref ref-type="bibr" rid="ref4">4</xref>
        ] if RDF is leveraged for data annotation.
RDF streams are usually considered to be boundless, thus there is no way to
host the overall data view with \enough" computing and storage resources. As
a common solution, a sliding window [
        <xref ref-type="bibr" rid="ref1">1</xref>
        ] with a limited size is typically
employed to isolate relevant portions of the RDF streams, as well as to execute the
queries.A window is generated by providing a preset size and step, in which the
size refers to the maximum window data capacity and the step indicates how
the window advances. The window is usually associated with a window
management strategy that controls how the data in the window is consumed, processed
and evicted. A simple timestamp-based window management strategy is
rstin- rst-out (FIFO), where items are replaced in strict order of arrival. Several
implemented systems work this way. C-SPARQL [
        <xref ref-type="bibr" rid="ref3">3</xref>
        ] leverages either time-based
or count-based sliding windows, where data enters and exits in a
First-In-FirstOut (FIFO) order. IMaRS [
        <xref ref-type="bibr" rid="ref2">2</xref>
        ] focuses reasoning tasks by both assigning each new
datum with a time-to-live period3 and truth maintenance information4, also in
FIFO order. Basically, all timestamp-based strategies implicitly assume that a
temporal ordering reliably re ects importance to the processing task, and thus
timestamp-based window management will maximize the processing algorithms
ability to deliver accurate interpretations of the stream.
      </p>
      <p>
        Keeping the eviction order linked to the arrival order for data works well
in systems like [
        <xref ref-type="bibr" rid="ref2">2</xref>
        ] and [
        <xref ref-type="bibr" rid="ref3">3</xref>
        ], where the expiration timestamp is either absent or
assigned by the system. However, if data needs to exit the window out of order,
FIFO-based strategies will not generally be adequate. This can happen if the
streaming data itself carries out-of-order expiration timestamps, or if the
expiration of the data is determined by other data in the stream, or if the use case
supplies data in no particular order.
      </p>
      <p>Our work is motivated by scenarios where stream reasoning needs more
general window management strategies that preserve the most important data in
the current window and preferentially evict the rest, so that the retained data
can continue maximally leveraged.</p>
      <p>The technical contributions include (1) the introduction of semantic
importance along with an empirical de nition; (2) a conceptual model of semantic
importance that includes RDF stream management metrics; (3) an exposition of
how our semantic importance conceptual model can be used to encode orderings
and improve stream reasoning system performance.
2</p>
    </sec>
    <sec id="sec-2">
      <title>Semantic Importance</title>
      <p>Semantic importance enables order-aware window management that considers
not only the temporal attributes of the data, but also the data contributions to
solution mappings. We de ne semantic importance using a set of key metrics,
each of which captures di erent aspects, including but not limited to query
contribution, provenance, trustworthiness and domain awareness.</p>
      <p>
        Speci cally, for each datum 5 , its semantic importance is a priority vector
[
        <xref ref-type="bibr" rid="ref8">8</xref>
        ] with elements preferentially ordered and with no restriction on the number of
vector elements. This allows us to consider multiple semantic importance
metrics simultaneously while preserving the ability to prioritize some metrics. For
example, if an RDF stream is associated with an explicit expiration timestamp
( exp), the priority vector [ exp] will consider unexpired data to be important. If
the query contribution (qc) is included, the priority vector [ exp; qc] can
emphasize exp over qc and thus encode that one unexpired datum is more important
than another if it contributes more to the result, and expired data becomes less
important however big its contributions are, in order to guarantee the constant
output with the latest answers. By explicitly characterizing the importance for
3 IMaRS attaches each data with an expiration timestamp that is calculated by adding
the arrival timestamp to the window size.
4 IMaRS incrementally materializes the inferences and manages both explicit and
implicit statements based on the expiration timestamp of the asserted data.
5 for RDF this is a graph that can contain one or more triples
each datum in the stream, we can enable order-awareness by ranking the
semantic importance priority vectors as follows: priority vector v1 = [x1; y1] compares
to v2 = [x2; y2] by rst comparing the most preferred element x1 and x2. If
x1 &gt; x2, then v1 &gt; v2; if x1 &lt; x2, then v1 &lt; v2; if x1 = x2, then continue to
compare the next less preferred element y1 and y2, if y1 &lt; y2, then v1 &lt; v2; if
y1 &gt; y2, then v1 &gt; v2; if y1 = y2, then v1 = v2. Priority vectors with more than
two elements follow the same pattern.
3
      </p>
    </sec>
    <sec id="sec-3">
      <title>Aspects of Semantic Importance</title>
      <p>Figure 1 shows the current four aspects (in green color) of semantic importance.
For query contribution, we further distinguish two components: frequency and
recency. Frequency is an integer value that describes how many times a valid
datum participates in the query, and recency describes the most recent timestamp
for a valid datum participating in the query. Further, we distinguish two types of
query contribution of a stream datum: query participation (direct graph pattern
matching), and reasoning participation (intermediate graph pattern matching
during reasoning) , where \participation" refers to the process in which the
solution mapping6 is generated by SPARQL query and streaming data. Both query
and reasoning participation have corresponding frequency and recency.</p>
      <p>
        Provenance in Figure 1 is also a factor in judging the importance of a
streaming datum [
        <xref ref-type="bibr" rid="ref5">5</xref>
        ]. Temporal provenance includes (1) generation timestamp, assigned
by the streaming source, which describes when the data is generated; (2) arrival
timestamp, assigned by the processing system, which describes when the data
arrives at the system; (3) expiration timestamp, assigned by either the
processing system or the streaming source, which describes when the data expires; (4)
recency timestamp, assigned by the system, which is associated with the query
contribution recency. We include physical and logical provenance [
        <xref ref-type="bibr" rid="ref6">6</xref>
        ] as aspects
of semantic importance as well. For example, sensors' physical geo-location and
6 https://www.w3.org/TR/rdf-sparql-query/#sparqlSolutions
maintenance information fall into physical provenance; while sensor's
measuring type falls into logical provenance. We also include provenance prominent
in social network contexts that we call digital provenance. Digital provenance
examples include digital geolocation information, user ID, and device ID. For
example, consider a system that processes a tweet stream about UEFA EURO
2016, and executes the query what is the sentiment distribution of UK residents
on England's loss to Iceland?. Digital provenance can be used to lter the data
in the stream window because only those tweets with UK geolocation will be
important to the query.
      </p>
      <p>
        Trustworthiness is another aspect of semantic importance. Consider a smart
city application where many tra c sensors are installed, and a shifting number
of them are broken and issue erroneous readings. Assigning a speci c
trustworthiness score for each data element allows the system to manage the streaming
window based on whether the individual data elements can be trusted. [
        <xref ref-type="bibr" rid="ref7">7</xref>
        ]
describes modeling trust in streaming data, and provides a theoretical foundation
to calculate a trust score online for each arrival data element. A trust range or
threshold can be provided to capture the data with an adequate trust score, and
be used to manage the window.
      </p>
      <p>Query contribution, provenance, and trustworthiness are largely independent
of the precise subject matter of the RDF stream, and so they provide
components of a generic model of semantic importance. However, speci c situated
topics and reasoning tasks can contribute signi cant domain-dependent
considerations. By examining the actual domain and speci c streaming data use cases,
we can join generic aspects with domain-speci c ones, and model semantic
importance in a more precise way. Our domain-aware aspect supports the modeling
use case requirements, such as the goal of the streaming analysis, background
knowledge and system constraints, etc. We are testing our approach in a
soccer o side o ence detection use case, comprising data on the real-time position
of the ball and everyone on the eld. Because only soccer players can commit
o side o ences, we can conclude that positional data for the referees will never
contribute to an o side o ence query7 , and can be ushed from the window.
In order to enable domain-awareness in stream reasoning systems, we can
provide a domain-aware importance ontology that encodes the domain information
necessary for the pre-registered continuous queries. This is di erent from the
background ontology that encodes the essential knowledge of the domain, and is
speci cally focused on capturing domain knowledge that impacts querying and
reasoning required to answer questions.
4</p>
    </sec>
    <sec id="sec-4">
      <title>Remembering the Important Things</title>
      <p>We discuss some interesting observations from our soccer use case experiments.
First, window generation and moving is not constrained by semantic importance,
7 Referee's position would be relevant for being in a position to \see" the o ense but
not actually to \a ect" if the o ense really occurs.
whose focus is on window management. Second, semantic importance can
interact with data arrival order. In FIFA Laws of the Game, a player commits an
o side o ence by being in an o side position before interfering with the play.
Thus :player :at :O sidePosition data must arrive earlier than :player :interfere
:play. The query, who commits o side o ence, will not yield the result if these
statements are not simultaneously in the window. Further, depending on the
nature of the query, it is possible that neither alone will participate in the query,
and so neither will be judged as semantically important without the other. And,
if either datum is evicted from the window because it is not important, then the
query will give an incorrect result. One possible solution is to decompose the
query to alleviate query constraints.</p>
      <p>We can decompose our o side query by asking who is at an o side position
and who interferes with play. These two queries do not generate or combine
results in stream, instead, they look for o side o ence relevant data so that
the window can update the semantic importance and rank the data to preserve
necessary information. Once all necessities are collected, the target query is
executed to provide nal results.</p>
      <p>Once the domain aware requirement ontology is in the system, domain
literate ltering can be performed. Data can be ranked by its domain relevance,
then irrelevant data can be ltered out because it is not important. Using the
soccer o side example, any player information not used to calculate an o side
position should not be considered as important. Domain literate ltering can
signi cantly reduce the data space before the target query is executed, which
enhances system response. It is typically suitable when the query relevant data
is sparsely distributed in the data stream.</p>
      <p>Semantic importance can be used to model several typical order-aware
window management strategies: FIFO can be implemented as [ e; g], where e is
the expiration timestamp and g is the generation timestamp. Least Frequently
Used (LFU) as [ e; frp; g], where frp denotes the reasoning participation
frequency and Least Recently Used (LRU) as [ e; rp; g], where rp denotes the
reasoning participation recency timestamp. If domain literate ltering needs to
be performed with FIFO, we can implement new strategy FIFO/DL as [dl; e; g]
where dl denotes the domain literate ltering indicator.</p>
      <p>Implementing semantic importance increases system overhead for computing
the query contribution metrics because a reasoning explainer is required to trace
back to the reasoning process to collect asserted statements. Domain literate
ltering needs to perform a set of SPARQL queries that could potentially match
a large fraction of the streaming data, which takes some time.
5</p>
    </sec>
    <sec id="sec-5">
      <title>Conclusion and Future Work</title>
      <p>We presented our preliminary notion of semantic importance together with its
key aspects, and described how to use semantic importance to enable
orderawareness in stream reasoning. Semantic importance enables a exible,
powerful, e cient and customizable framework to support window management that
can maintain and potentially improve reasoning results in compute- and
spacelimited settings. There are more details of our speci c use of semantic importance
in the soccer o side o ence use case 8, where we have been able to show that
semantic importance can be used to identi y important data, increase accuracy
in reasoning-based query answers and be the basis of streaming window
management strategies. In the future, we will further develop the conceptual model
by both adding more aspects and enriching additional details of each aspect.
6</p>
    </sec>
    <sec id="sec-6">
      <title>Acknowledgments</title>
      <p>The research described in the paper is part of the Analysis in Motion research
initiative at the Paci c Northwest National Laboratory, a multi-program
national laboratory operated by Battelle for the U.S. Department of Energy under
contract DE-AC06-76RLO-1830. The work was conducted under Laboratory
Directed Research and Development (LDRD) funding from PNNL to RPI.</p>
    </sec>
  </body>
  <back>
    <ref-list>
      <ref id="ref1">
        <mixed-citation>
          1.
          <string-name>
            <given-names>Arvind</given-names>
            <surname>Arasu</surname>
          </string-name>
          , Brian Babcock, Shivnath Babu, Mayur Datar, Keith Ito, Itaru Nishizawa, Justin Rosenstein, and
          <string-name>
            <given-names>Jennifer</given-names>
            <surname>Widom</surname>
          </string-name>
          .
          <article-title>Stream: the stanford stream data manager (demonstration description)</article-title>
          .
          <source>In Proc. of the 2003 ACM SIGMOD international conference on Management of data</source>
          , pages
          <volume>665</volume>
          {
          <fpage>665</fpage>
          . ACM,
          <year>2003</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref2">
        <mixed-citation>
          2.
          <string-name>
            <given-names>Davide</given-names>
            <surname>Francesco</surname>
          </string-name>
          <string-name>
            <surname>Barbieri</surname>
          </string-name>
          , Daniele Braga, Stefano Ceri, Emanuele Della Valle, and
          <string-name>
            <given-names>Michael</given-names>
            <surname>Grossniklaus</surname>
          </string-name>
          .
          <article-title>Incremental reasoning on streams and rich background knowledge</article-title>
          .
          <source>In Extended Semantic Web Conference</source>
          , pages
          <fpage>1</fpage>
          <lpage>{</lpage>
          15. Springer,
          <year>2010</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref3">
        <mixed-citation>
          3.
          <string-name>
            <given-names>Davide</given-names>
            <surname>Francesco</surname>
          </string-name>
          <string-name>
            <surname>Barbieri</surname>
          </string-name>
          , Daniele Braga, Stefano Ceri, Emanuele Della Valle, and
          <string-name>
            <given-names>Michael</given-names>
            <surname>Grossniklaus</surname>
          </string-name>
          .
          <article-title>C-sparql: a continuous query language for rdf data streams</article-title>
          .
          <source>International Journal of Semantic Computing</source>
          ,
          <volume>4</volume>
          (
          <issue>01</issue>
          ):
          <volume>3</volume>
          {
          <fpage>25</fpage>
          ,
          <year>2010</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref4">
        <mixed-citation>
          4.
          <string-name>
            <surname>Jean-Paul Calbimonte</surname>
          </string-name>
          .
          <article-title>Rdf stream processing: let's react</article-title>
          .
          <source>In Proceedings of the 3rd International Conference on Ordering and Reasoning</source>
          -Volume
          <volume>1303</volume>
          , pages
          <fpage>1</fpage>
          <lpage>{</lpage>
          10. CEUR-WS. org,
          <year>2014</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref5">
        <mixed-citation>
          5.
          <string-name>
            <given-names>Ming</given-names>
            <surname>Gao</surname>
          </string-name>
          ,
          <string-name>
            <surname>Che-Qing</surname>
            <given-names>Jin</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Xiao-Ling</surname>
            <given-names>Wang</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Xiu-Xia Tian</surname>
          </string-name>
          , and
          <string-name>
            <surname>Ao-Ying Zhou</surname>
          </string-name>
          .
          <article-title>A survey on management of data provenance</article-title>
          .
          <source>Chinese Journal of Computers</source>
          ,
          <volume>33</volume>
          (
          <issue>3</issue>
          ):
          <volume>373</volume>
          {
          <fpage>389</fpage>
          ,
          <year>2010</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref6">
        <mixed-citation>
          6.
          <string-name>
            <surname>Hyo-Sang</surname>
            <given-names>Lim</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Yang-Sae Moon</surname>
          </string-name>
          , and Elisa Bertino.
          <article-title>Research issues in data provenance for streaming environments</article-title>
          .
          <source>In Proc. of the 2nd SIGSPATIAL ACM GIS 2009 International Workshop on Security and Privacy in GIS and LBS</source>
          , pages
          <volume>58</volume>
          {
          <fpage>62</fpage>
          . ACM,
          <year>2009</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref7">
        <mixed-citation>
          7.
          <string-name>
            <surname>Hyo-Sang</surname>
            <given-names>Lim</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Yang-Sae Moon</surname>
            , and
            <given-names>Elisa</given-names>
          </string-name>
          <string-name>
            <surname>Bertino</surname>
          </string-name>
          .
          <article-title>Assessing the trustworthiness of streaming data</article-title>
          .
          <source>Technical report, Technical Report TR 2010-09</source>
          , CERIAS,
          <year>2010</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref8">
        <mixed-citation>
          8. Thomas L Saaty.
          <article-title>Decision-making with the ahp: Why is the principal eigenvector necessary</article-title>
          .
          <source>European journal of operational research</source>
          ,
          <volume>145</volume>
          (
          <issue>1</issue>
          ):
          <volume>85</volume>
          {
          <fpage>91</fpage>
          ,
          <year>2003</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref9">
        <mixed-citation>
          9.
          <string-name>
            <given-names>Emanuele</given-names>
            <surname>Della</surname>
          </string-name>
          <string-name>
            <surname>Valle</surname>
          </string-name>
          , Stefano Ceri, Frank van Harmelen,
          <string-name>
            <given-names>and Dieter</given-names>
            <surname>Fensel</surname>
          </string-name>
          .
          <article-title>It's a streaming world! reasoning upon rapidly changing information</article-title>
          .
          <source>IEEE Intelligent Systems</source>
          ,
          <volume>24</volume>
          (
          <issue>6</issue>
          ):
          <volume>83</volume>
          {
          <fpage>89</fpage>
          ,
          <year>2009</year>
          .
        </mixed-citation>
      </ref>
    </ref-list>
  </back>
</article>