<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE article PUBLIC "-//NLM//DTD Journal Publishing DTD v2.3 20070202//EN" "journalpublishing.dtd">
<article xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:xlink="http://www.w3.org/1999/xlink" xml:lang="en" article-type="research-article">
  <front>
    <journal-meta>
      <journal-id journal-id-type="publisher-id">futureinternet</journal-id>
      <journal-title>Future Internet</journal-title>
      <abbrev-journal-title abbrev-type="publisher">Future Internet</abbrev-journal-title>
      <abbrev-journal-title abbrev-type="pubmed">futureinternet</abbrev-journal-title>
      <issn pub-type="epub">1999-5903</issn>
      <publisher>
        <publisher-name>MDPI</publisher-name>
      </publisher>
    </journal-meta>
    <article-meta>
      <article-id pub-id-type="doi">10.3390/fi4040865</article-id>
      <article-id pub-id-type="publisher-id">futureinternet-04-00865</article-id>
      <article-categories>
        <subj-group>
          <subject>Article</subject>
        </subj-group>
      </article-categories>
      <title-group>
        <article-title>Plausible Description Logic Programs for Stream Reasoning</article-title>
      </title-group>
      <contrib-group>
        <contrib contrib-type="author">
          <name>
            <surname>Groza</surname>
            <given-names>Adrian</given-names>
          </name>
          <xref rid="c1-futureinternet-04-00865" ref-type="corresp">*</xref>
        </contrib>
        <contrib contrib-type="author">
          <name>
            <surname>Letia</surname>
            <given-names>Ioan Alfred</given-names>
          </name>
        </contrib>
      </contrib-group>
      <aff id="af1-futureinternet-04-00865">Department of Computer Science Technical University of Cluj-Napoca Memorandumului 28 Cluj-Napoca 400391 Romania; Email: <email>letia@cs-gw.utcluj.ro</email></aff>
      <author-notes>
        <corresp id="c1-futureinternet-04-00865"><label>*</label> Author to whom correspondence should be addressed; Email: <email>adrian.groza@cs.utcluj.ro</email>; Tel.: +40-264-401-446.</corresp>
      </author-notes>
      <pub-date pub-type="epub">
        <day>17</day>
        <month>10</month>
        <year>2012</year>
      </pub-date>
      <pub-date pub-type="collection">
        <month>12</month>
        <year>2012</year>
      </pub-date>
      <volume>4</volume>
      <issue>4</issue>
      <fpage>865</fpage>
      <lpage>881</lpage>
      <history>
        <date date-type="received">
          <day>09</day>
          <month>08</month>
          <year>2012</year>
        </date>
        <date date-type="rev-recd">
          <day>09</day>
          <month>09</month>
          <year>2012</year>
        </date>
        <date date-type="accepted">
          <day>25</day>
          <month>09</month>
          <year>2012</year>
        </date>
      </history>
      <permissions>
        <copyright-statement>© 2012 by the authors; licensee MDPI, Basel, Switzerland.</copyright-statement>
        <copyright-year>2012</copyright-year>
        <license xmlns:xlink="http://www.w3.org/1999/xlink" license-type="open-access" xlink:href="http://creativecommons.org/licenses/by/3.0/">
          <p>This article is an open-access article distributed under the terms and conditions of the Creative Commons Attribution license (http://creativecommons.org/licenses/by/3.0/).</p>
        </license>
      </permissions>
      <abstract>
        <p> Sensor networks are estimated to drive the formation of the future Internet, with stream reasoning responsible for analysing sensor data. Stream reasoning is defined as real time logical reasoning on large, noisy, heterogeneous data streams, aiming to support the decision process of large numbers of concurrent querying agents. In this research we exploited non-monotonic rule-based systems for handling inconsistent or incomplete information and also ontologies to deal with heterogeneity. Data is aggregated from distributed streams in real time and plausible rules fire when new data is available. The advantages of lazy evaluation on data streams were investigated in this study, with the help of a prototype developed in Haskell.</p>
      </abstract>
      <kwd-group>
        <kwd>stream reasoning</kwd>
        <kwd>description logic</kwd>
        <kwd>plausible logic</kwd>
        <kwd>lazy evaluation</kwd>
        <kwd>sensors</kwd>
        <kwd>Haskell</kwd>
      </kwd-group>
    </article-meta>
  </front>
  <body>
    <sec sec-type="intro">
      <title>1. Introduction</title>
      <p>Sensor networks are gradually becoming ubiquitous in the industrial world [<xref ref-type="bibr" rid="B1-futureinternet-04-00865">1</xref>], whilst they are estimated to drive the formation of the future Internet, by 2015 [<xref ref-type="bibr" rid="B2-futureinternet-04-00865">2</xref>]. The value of the Sensor Web is related to the capacity to aggregate, analyse and interpret this new source of knowledge. Currently, there is a lack of systems designed to manage rapidly changing information at the semantic level [<xref ref-type="bibr" rid="B3-futureinternet-04-00865">3</xref>]. The solution given by data-stream management systems (DSMS) is limited mainly by the incapacity to perform complex reasoning tasks, and semantic technologies are seen as the main technical instrumentation available to deal with the current problems [<xref ref-type="bibr" rid="B4-futureinternet-04-00865">4</xref>].</p>
      <p>Stream reasoning is defined as real time logical reasoning on huge, possible infinite, noisy data streams, aiming to support the decision process of large numbers of concurrent querying agents. In order to handle blocking operators on infinite streams (like min, mean, average, sort), the reasoning process is restricted to a certain window of concern within the stream, whilst the previous information is discarded [<xref ref-type="bibr" rid="B5-futureinternet-04-00865">5</xref>]. This strategy is applicable only for situations where recent data have higher relevance (e.g., average water debit in the last 10 minutes). In some reasoning tasks, tuples in different streams that are far apart need to be joined arbitrarily.</p>
      <p>Stream reasoning adopts the continuous processing model, where reasoning goals are continuously evaluated against a dynamic knowledge base. This leads to the concept of transient queries, opposite to the persistent queries in a database.</p>
      <p>Typical applications of stream reasoning are: traffic monitoring, urban computing, patient monitoring, weather monitoring from satellite data, monitoring financial transactions [<xref ref-type="bibr" rid="B3-futureinternet-04-00865">3</xref>] or stock market. Real time events analysis is conducted in domains like seismic incidents, flu outbreaks, or tsunami alert based on a wide range of sensor networks starting from the RFID (Radio-Frequency Identification) technology to the Twitter data flow [<xref ref-type="bibr" rid="B6-futureinternet-04-00865">6</xref>]. Decisions should be taken based on plausible events. Waiting to have complete confirmation of an event might be too risky.</p>
      <p>To summarise, the problem is given by the inability of the current stream reasoning systems (i) to perform semantic reasoning on changing information from heterogeneous sensors and (ii) to support decision in case of incomplete information.</p>
      <p>Our solution is based on three technical components: description logic (DL), plausible logic (PL) and functional programming. Description logic is used to deal with heterogeneity and to fill the gap between low level sensor data and high level knowledge requested by decision takers. Plausible Logic, being non-monotonic, is used for handling incomplete information and its explicit priorities are used to solve inconsistencies. The Haskell data structures are used to model infinite streams based on the lazy evaluation mechanism of Haskell. Also, functional programming is used to process streams on the fly according to given aggregation policies.</p>
      <p>Note that in the current approach, the rule-based system is not on top of the ontology level, as envisaged by the Semantic Web stack. Instead, they are at the same level with part of the ontology being translated into strict rules. Consequently, after the translation, all the reasoning on streams is performed within the plausible logic framework. The main advantage rests in the time needed, given the superior efficiency of plausible logic [<xref ref-type="bibr" rid="B7-futureinternet-04-00865">7</xref>] compared to description logic [<xref ref-type="bibr" rid="B8-futureinternet-04-00865">8</xref>].</p>
      <p>This paper is an extended version of [<xref ref-type="bibr" rid="B9-futureinternet-04-00865">9</xref>]. The first contribution regards the integration of plausible rules with description logic. As a second contribution, we describe the use of Haskell data structures and the lazy evaluation mechanism for continuous reasoning on infinite streams.</p>
      <p>We exploit non-monotonic rule-based systems for handling inconsistent or incomplete information and also ontologies to deal with heterogeneity. Data is aggregated from distributed streams in real time, and plausible rules fire when new data is available. This study investigates the advantages of lazy evaluation on data streams as well.</p>
      <p><xref ref-type="sec" rid="sec2-futureinternet-04-00865">Section 2</xref> evidentiates distinctive features of our approach compared to related work. <xref ref-type="sec" rid="sec3-futureinternet-04-00865">Section 3</xref> introduces the technical instrumentation, which is based on plausible logic and description logic. <xref ref-type="sec" rid="sec4-futureinternet-04-00865">Section 4</xref> presents the developed stream management system. A running scenario is illustrated in <xref ref-type="sec" rid="sec5-futureinternet-04-00865">Section 5</xref>. Finally, <xref ref-type="sec" rid="sec6-futureinternet-04-00865">Section 6</xref> summarizes the advantages and possible improvements of our solution.</p>
    </sec>
    <sec id="sec2-futureinternet-04-00865">
      <title>2. Related Work</title>
      <p>Stream integration is considered an ongoing challenge for the stream management systems [<xref ref-type="bibr" rid="B2-futureinternet-04-00865">2</xref>,<xref ref-type="bibr" rid="B3-futureinternet-04-00865">3</xref>,<xref ref-type="bibr" rid="B10-futureinternet-04-00865">10</xref>,<xref ref-type="bibr" rid="B11-futureinternet-04-00865">11</xref>], with several tools available to perform stream reasoning.</p>
      <p>DyKnow [<xref ref-type="bibr" rid="B12-futureinternet-04-00865">12</xref>] introduces the knowledge processing language KPL to specify knowledge processing applications on streams. We exploit the Haskell stream operators to handle streams and the list comprehension for querying these streams. The SPARQL algebra is extended in [<xref ref-type="bibr" rid="B13-futureinternet-04-00865">13</xref>] with time windows and pattern matching for stream processing. In our approach we exploit the existing list comprehension and pattern matching in Haskell, aiming at the same goal of RDF streams processing. Comparing with C-SPARQL, Haskell provides capabilities to aggregate streams before performing queries against them. Etalis tool performs reasoning tasks over streaming events with respect to background knowledge encapsulated as Prolog rules [<xref ref-type="bibr" rid="B14-futureinternet-04-00865">14</xref>]. In our case, the background knowledge is obtained from ontologies, translated as strict rules in order to reason over a unified space.</p>
      <p>The need to consider revision in stream processing is also addressed in [<xref ref-type="bibr" rid="B15-futureinternet-04-00865">15</xref>]. A rule-based algorithm is developed to handle different situations in which event revision should be activated. In our case, the defeasible semantics of plausible logic is enacted to block the derivation of complex events in case of new contradictory information. Consequently, the knowledge engineer would be responsible to define what a plausible event is, and what consequences cannot be retracted even if its premises have been proved false after revision, by modelling them as strict rules. One possible line of research, which harmonises these two complementary approaches, would be to develop a logic for stream processing.</p>
      <p>The strength of plausibility of the consequents is given by the superiority relation among rules. One idea of computing the degree of plausibility is to exploit specific plausible reasoning patterns like <italic>epagoge</italic>: “If A is true, then B is true. B is true. Therefore, A becomes more plausible”, “If A is true, then B is true. A is false. Therefore, B becomes less plausible”, or “If A is true, then B becomes more plausible. B is true. Therefore, A becomes more plausible.”</p>
      <p>The research conducted here can be integrated into the larger context of Semantic Sensor Web, where challenges like abstraction level, data fusion, application development [<xref ref-type="bibr" rid="B16-futureinternet-04-00865">16</xref>] are addressed by several research projects like Aspire [<xref ref-type="bibr" rid="B17-futureinternet-04-00865">17</xref>] or Sensei [<xref ref-type="bibr" rid="B18-futureinternet-04-00865">18</xref>]. By encapsulating domain knowledge as description logic programs, the level of abstraction can be adapted for the current application by importing a more refined ontology into DLP. From a different perspective, the ontology used for stream processing acts as a summator [<xref ref-type="bibr" rid="B19-futureinternet-04-00865">19</xref>]: instead of storing all the input data, the incoming items are classified and only this abstract knowledge is stored as instances. One advantage is that the system facilitates business intelligence through the set of semantic queries that can be addressed against the classified knowledge. Examples of such queries are “how many dairy products have been sold since yesterday” or “what quantity of man’s wear was sold in the last month”, where the level of refinement is given by the exploited ontology.</p>
    </sec>
    <sec id="sec3-futureinternet-04-00865">
      <title>3. Integrating Plausible Rules with Ontologies</title>
      <p>This section starts with the formalisation of plausible logic responsible for performing reasoning on streams. Then, it introduces description logic for modelling ontologies. Finally, it formalises the translation of ontologies into strict rules in PL. We consider that sensor data are available as instances of a sensor ontology.</p>
      <sec>
        <title>3.1. Plausible Logic</title>
        <p>As a non-monotonic formalism, plausible logic (PL) deals with the problem of deriving conclusions in case of incomplete or uncertain information. Plausible logic is considered an improvement of defeasible logic [<xref ref-type="bibr" rid="B20-futureinternet-04-00865">20</xref>,<xref ref-type="bibr" rid="B21-futureinternet-04-00865">21</xref>].</p>
        <p>A clause in PL <inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-i001.tif"/> is the disjunction of positive or negative atoms <inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-i002.tif"/>. If both an atom and its negation appear, the clause is a tautology. A <italic>contingent</italic> clause is a clause which is neither empty nor a tautology [<xref ref-type="bibr" rid="B20-futureinternet-04-00865">20</xref>].</p>
        <p>
          <bold>Definition 1 </bold>
          <italic>A plausible description of a situation is a tuple <inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-i003.tif"/>, where <inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-i004.tif"/> is a set of contingent clauses, called axioms, characterising the aspects of the situation that are certain, <inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-i005.tif"/> is a set of plausible rules, <inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-i006.tif"/> is a set of defeater rules, and <inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-i007.tif"/> is a priority relation on <inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-i008.tif"/>. </italic>
        </p>
        <p>A plausible theory is computed from a plausible description by deriving the set <inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-i009.tif"/> of strict rules from the definite facts <inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-i004.tif"/>. Thus, a plausible knowledge base consists of strict rules (<inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-i010.tif"/>), plausible rules (<inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-i011.tif"/>), defeater (warning) rules (<inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-i012.tif"/>), and a priority relation on the rules (<inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-i007.tif"/>). Strict rules are rules in the classical sense (that is, whenever the premises are indisputable), then so is the conclusion. An atomic fact is represented by a strict rule with an empty antecedent. The plausible rule <inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-i013.tif"/> means that if all the antecedents <inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-i002.tif"/> are proved and all the evidence against the consequent <inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-i014.tif"/> has been defeated, then <inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-i014.tif"/> can be deduced. The plausible conclusion <inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-i014.tif"/> can be defeated by contrary evidence.</p>
        <p>The only use of defeaters is to prevent some conclusions, as in “if the buyer is a regular one and he has a short delay for paying, we might not ask for penalties”. This rule does not provide sufficient evidence to support a “non-penalty” conclusion, but it is strong enough to prevent the derivation of the penalty consequent. The priority relation <inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-i007.tif"/> allows the representation of preferences among non-strict rules.</p>
        <p>Decisive plausible logic consists of a plausible theory and a proof function <inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-i015.tif"/> that, given a proof algorithm <inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-i016.tif"/> and a formula <inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-i017.tif"/> in conjunctive normal form, returns <inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-i018.tif"/> if <inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-i019.tif"/> was proved, <inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-i020.tif"/> if there is no proof for <inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-i019.tif"/>, or 0 when <inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-i019.tif"/> is undecidable due to looping. Plausible Logic has five proof algorithms <inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-i021.tif"/>, in which one is monotonic and four are non-monotonic: <inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-i022.tif"/> monotonic, strict, like classical logic; <inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-i023.tif"/>; <inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-i024.tif"/> plausible, propagating-ambiguity; <inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-i025.tif"/> plausible, blocking-ambiguity; and <inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-i026.tif"/>.</p>
        <p>
          <bold>Example 1 </bold>
          <italic>Consider the following rules for triggering an alarm system in case the temperature rises above 0 <inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-i027.tif"/> in a refrigerator room.</italic>
        </p>
		<list list-type="simple">
		<list-item>
        <p><inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-i028.tif"/></p>
		</list-item>
		<list-item>
        <p><inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-i029.tif"/></p>
		</list-item>
		<list-item>
        <p><inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-i030.tif"/></p>
		</list-item>
		<list-item>
        <p><inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-i031.tif"/></p>
		</list-item>
		<list-item>
        <p><inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-i032.tif"/></p>
		</list-item>
		</list>
        <p>The rule <inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-i033.tif"/> is a strict one: whenever the temperature <inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-i034.tif"/> measured by the sensor <inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-i035.tif"/> is above 4 <inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-i036.tif"/>C the alarm starts automatically. The rule <inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-i037.tif"/> is a plausible one: if the measured temperature is above 0 <inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-i036.tif"/>C, there is a reason to support the decision to trigger the alarm. The algorithm analyses if there are other reasons supporting the opposite conclusion or trying to defeat it. Rule <inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-i038.tif"/> is such a rule. If both rules can be fired, we have an ambiguity. In case of the propagating-ambiguity strategy, both consequences are derived by the system. In case of the blocking-ambiguity strategy, no conclusion would be valid. Note that the rule <inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-i039.tif"/> is a defeater that, in case of activation, blocks the derivation of the conclusion <inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-i040.tif"/>. If active, <inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-i039.tif"/> being stronger than <inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-i038.tif"/> is able to block the corresponding decision. At this moment the consequence of the rule <inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-i037.tif"/> is no longer attacked by any valid rule. This mechanism corresponds to the argumentative semantics characterising the family of the defeasible logics [<xref ref-type="bibr" rid="B22-futureinternet-04-00865">22</xref>].</p>
      </sec>
      <sec>
        <title>3.2. Description Logic</title>
        <p>In the description logic <inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-i041.tif"/>, concepts are built using the set of constructors formed by negation, conjunction, disjunction, value restriction, and existential restriction, as <xref ref-type="table" rid="futureinternet-04-00865-t001">Table 1</xref> bears out [<xref ref-type="bibr" rid="B23-futureinternet-04-00865">23</xref>]. Here, <inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-i042.tif"/> and <inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-i043.tif"/> represent concept descriptions, whilst <inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-i044.tif"/> and <inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-i045.tif"/> role names. In this study we used the extension of <inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-i041.tif"/> with transitivity (<inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-i046.tif"/>) on roles and role hierarchy (<inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-i047.tif"/>), known as <inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-i048.tif"/> or <inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-i049.tif"/>. The syntax of <inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-i049.tif"/> is defined by the following grammar: 
        <disp-formula id="futureinternet-04-00865-i050">
          <inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-i050.tif"/>
          <label>(1)</label>
          </disp-formula>
        where <inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-i051.tif"/> represents an atomic concept and <inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-i052.tif"/> the top level concept.</p>
        <p>The semantics is defined based on an interpretation <inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-i053.tif"/>, where the domain <inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-i054.tif"/> of <inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-i055.tif"/> contains a non-empty set of individuals, whilst the interpretation function <inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-i056.tif"/> maps each concept name <inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-i042.tif"/> to a set of individuals <inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-i057.tif"/> and each role <inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-i044.tif"/> to a binary relation <inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-i058.tif"/>. The second column of <xref ref-type="table" rid="futureinternet-04-00865-t001">Table 1</xref> illustrates the extension of <inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-i056.tif"/> to arbitrary concepts.</p>
        <table-wrap id="futureinternet-04-00865-t001" position="float">
          <object-id pub-id-type="pii">futureinternet-04-00865-t001_Table 1</object-id>
          <label>Table 1</label>
          <caption>
            <p>Syntax and Semantics of <inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-i049.tif"/> concepts.</p>
          </caption>
          <table>
            <thead>
              <tr>
                <th align="center" valign="middle">Syntax</th>
                <th align="center" valign="middle">Semantics</th>
              </tr>
            </thead>
            <tbody>
              <tr>
                <td align="center" valign="middle"><inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-i059.tif"/></td>
                <td align="center" valign="middle"><inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-i060.tif"/></td>
              </tr>
              <tr>
                <td align="center" valign="middle"><inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-i061.tif"/></td>
                <td align="center" valign="middle"><inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-i062.tif"/></td>
              </tr>
              <tr>
                <td align="center" valign="middle"><inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-i063.tif"/></td>
                <td align="center" valign="middle"><inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-i064.tif"/></td>
              </tr>
              <tr>
                <td align="center" valign="middle"><inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-i065.tif"/></td>
                <td align="center" valign="middle"><inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-i066.tif"/></td>
              </tr>
              <tr>
                <td align="center" valign="middle"><inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-i067.tif"/></td>
                <td align="center" valign="middle"><inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-i068.tif"/></td>
              </tr>
              <tr>
                <td align="center" valign="middle"><inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-i069.tif"/></td>
                <td align="center" valign="middle"><inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-i070.tif"/></td>
              </tr>
              <tr>
                <td align="center" valign="middle"><inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-i071.tif"/></td>
                <td align="center" valign="middle"><inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-i072.tif"/></td>
              </tr>
            </tbody>
          </table>
        </table-wrap>
        <p>
          <bold>Definition 2 </bold>
          <italic>A concept <inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-i042.tif"/> is satisfiable if there exists an interpretation <inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-i055.tif"/> such that <inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-i073.tif"/>. The concept <inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-i043.tif"/> subsumes the concept <inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-i042.tif"/> (<inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-i074.tif"/>) if <inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-i075.tif"/> for all interpretations <inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-i055.tif"/>. </italic>
        </p>
        <p>
          <bold>Definition 3 </bold>
          <italic>An <inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-i076.tif"/> is a finite set of concept assertions <inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-i077.tif"/> or role assertions <inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-i078.tif"/>, where <inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-i042.tif"/> represents a concept, <inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-i044.tif"/> a role, and <inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-i079.tif"/> and <inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-i080.tif"/> are two instances. Usually, the unique name assumption holds within the same <inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-i076.tif"/>. A <inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-i081.tif"/> is a finite set of terminological axioms of the form <inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-i082.tif"/> or <inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-i074.tif"/>. </italic>
        </p>
        <p>
          <bold>Example 2 </bold>
          <italic>Consider the domain <inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-i083.tif"/>. Let the terminology: </italic>
        <disp-formula id="futureinternet-04-00865-i084">
          <inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-i084.tif"/>
          </disp-formula>
        <disp-formula id="futureinternet-04-00865-i085">
          <inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-i085.tif"/>
          </disp-formula>
        The interpretation function treats the individual <inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-i086.tif"/> as a wireless sensor with the measurement accuracy of 0.1 <inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-i036.tif"/>C, where the value is interpreted as an instance of the class <italic>MeasureUnit</italic>. Based on the second axiom in the <italic>TBox</italic>, the subsumption reasoning service of the DL derives <inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-i086.tif"/> as an instance of the <italic>Sensor</italic> concept.</p>
      </sec>
      <sec id="sec3dot3-futureinternet-04-00865">
        <title>3.3. Translating from DL to Plausible Logic Programs</title>
        <p>This section exploits the work in [<xref ref-type="bibr" rid="B24-futureinternet-04-00865">24</xref>] in order to translate description logic based on ontologies into plausible logic axioms. Facing the challenge to reason on huge amount of noise and heterogeneous data, the DL fragment corresponding to Horn clauses, known as Description Logic Programs [<xref ref-type="bibr" rid="B25-futureinternet-04-00865">25</xref>], can be a suitable choice.</p>
        <p>Conjunctions and universal restrictions in the right hand side of inclusion axioms are converted into rule heads (<inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-i087.tif"/> classes), whilst conjunction, disjunction and existential restriction appearing in the left-hand side are translated into rule bodies (<inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-i088.tif"/> classes). <xref ref-type="fig" rid="futureinternet-04-00865-f001">Figure 1</xref> presents the mapping function <inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-i089.tif"/> from DL to strict rules in a plausible knowledge base, where <inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-i051.tif"/>, <inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-i042.tif"/> and <inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-i043.tif"/> are concepts such that <inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-i090.tif"/>, <inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-i091.tif"/>, <inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-i051.tif"/> is an atomic concept, <inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-i092.tif"/>, <inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-i093.tif"/> and <inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-i094.tif"/> are variables, and <inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-i095.tif"/> and <inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-i096.tif"/> are roles.</p>
        <fig id="futureinternet-04-00865-f001" position="anchor">
          <label>Figure 1</label>
          <caption>
            <p>Mapping from DL ontologies into strict rules.</p>
          </caption>
          <graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-g001.tif"/>
        </fig>
        <p>If <inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-i042.tif"/> is subsumed by <inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-i043.tif"/>, then each individual <inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-i092.tif"/> in <inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-i042.tif"/> is also an instance of the class <inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-i043.tif"/>. The axiom <inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-i098.tif"/> says that, with certainty, all the roles <inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-i095.tif"/> point towards individuals of type <inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-i043.tif"/>. It is translated in second line of <xref ref-type="fig" rid="futureinternet-04-00865-f001">Figure 1</xref> as: if there is a relation <inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-i095.tif"/> between <inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-i092.tif"/> and <inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-i093.tif"/>, the element <inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-i093.tif"/> should be of type <inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-i043.tif"/>. Similar semantics is applied for the inverse role <inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-i099.tif"/>, where the domain and range are interchanged. If <inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-i079.tif"/> is interpreted as a <inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-i043.tif"/> concept, then <inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-i079.tif"/> is of type <inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-i043.tif"/>. The role assertion <inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-i100.tif"/> is interpreted as the two individuals <inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-i079.tif"/> and <inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-i080.tif"/> being in relation <inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-i095.tif"/>. The mapping of role subsumption <inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-i101.tif"/> outputs that given two elements <inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-i092.tif"/> and <inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-i093.tif"/> in relation <inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-i095.tif"/>, they are linked by the more general relation <inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-i096.tif"/>. The transitivity property of roles <inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-i102.tif"/> says that if the instance <inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-i092.tif"/> is related to <inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-i093.tif"/> by the role <inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-i095.tif"/> and if <inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-i093.tif"/> is related to <inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-i094.tif"/> by the same role, then it is necessary that <inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-i092.tif"/> is related to <inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-i094.tif"/> by the same role <inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-i095.tif"/>.</p>
      </sec>
    </sec>
    <sec id="sec4-futureinternet-04-00865">
      <title>4. Data Stream Management System in Haskell</title>
      <p>This section details the architecture of the PSRH (Plausible Stream Reasoning in Haskell) system (<xref ref-type="fig" rid="futureinternet-04-00865-f002">Figure 2</xref>). For each problem, a domain expert is responsible to define the priorities and the plausible rules in order to handle contradictory data. The mapping module translates the available ontologies into facts and strict rules. The stream module provides a collection of functions for manipulating the input data streams. The relevant sensor-based measurements are stored as facts in the plausible theory. The decisive plausible tool is continuously queried in order to support plausible decisions in real-time. Each module described in the following paragraphs is built on top of the Haskell platform.</p>
      <fig id="futureinternet-04-00865-f002" position="anchor">
        <label>Figure 2</label>
        <caption>
          <p>The architecture of the PSRH (Plausible Stream Reasoning in Haskell).</p>
        </caption>
        <graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-g002.tif"/>
      </fig>
      <sec>
        <title>4.1. The Haskell Platform</title>
        <p>The advantages that Haskell brings in this landscape—lazy evaluation and implicit parallelism—are significant features when dealing with huge data streams that are parallel in nature. The parallel performing of reasoning tasks is of significant importance in order to provide answers in due time [<xref ref-type="bibr" rid="B3-futureinternet-04-00865">3</xref>]. The Haskell’s polymorphism allows to write generic code to process streams, which is particularly useful due to the different usages of the same data stream. The absence of side effects means that the order of expression evaluation is of no importance, which is extremely desirable in the context of data streams coming from different sources.</p>
        <p>One challenge in answering many continuous queries in real-time is query optimisation. Allowing equational reasoning, the platform can be exploited for automatic program and optimising queries. A premise specified as lazy is matched only when its variables are anticipating to participate in the answer to a pending conclusion or query.</p>
        <p>The continuous semantics of data streams assumes that: (i) <italic>streams are volatile</italic>—they are consumed on the fly and not stored forever; and (ii) <italic>continuous processing</italic>—queries are registered and produce answers continuously [<xref ref-type="bibr" rid="B5-futureinternet-04-00865">5</xref>]. In our case, the rules are triggered continuously in order to produce streams of consequents. The stateless feature of pure Haskell facilitates the conceptual model of networks of stream reasoners as envisaged in [<xref ref-type="bibr" rid="B26-futureinternet-04-00865">26</xref>], where data is processed on the fly, without being stored.</p>
        <p>The lazy evaluation in Haskell provides answers perpetually, when the queries are executed against infinite streams. One does not have to specify the time steps when the query should be executed. By default, the tuples are consumed when they become available, and only in case they contribute to a query answer.</p>
        <p>The computational efficiency is supported by the fact that a function is not forced to wait for a data to arrive—the possible computations are executed instead. Moreover, one can use the about-to-come data by borrowing it from the future, as long as no function tries to change its value. The non-strict semantics of Haskell allows the functions not to produce errors that can be avoided. Consequently, some noise data can be avoided, without disturbing the computations.</p>
        <p>There is no constraint on the nature of data fed by a stream. The functions can be applied on RDF streams as follows: A triple object is created by the <italic>triple</italic> function
        <disp-formula id="futureinternet-04-00865-i104">
          <inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-i104.tif"/>
          </disp-formula></p>
        <p>
          <bold>Definition 4 </bold>
          <italic>An RDF stream is an infinite list of tuples of the form <inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-i105.tif"/> annotated with their time stamps <inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-i106.tif"/>. </italic>
        <disp-formula id="futureinternet-04-00865-i107">
          <inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-i107.tif"/>
          </disp-formula>
        </p>
        <p>
          <bold>Example 3 </bold>
          <italic>An RDF stream of auction bids comprises the bidder agent, its action (sell or buy), and the bid value: </italic>
        <disp-formula id="futureinternet-04-00865-i108">
          <inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-i108.tif"/>
          </disp-formula>
		  In the first tuple the agent <inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-i109.tif"/> wants to sell a specific item for 30$, the offer being made at the time step 14.32. The stream is implemented with the infinite list data structure in Haskell.</p>
      </sec>
      <sec>
        <title>4.2. Streams Module</title>
        <p><xref ref-type="table" rid="futureinternet-04-00865-t002">Table 2</xref> illustrates the operators provided by Haskell to manipulate infinite streams. The basic operators allow to construct infinite streams or to extract elements from the input stream. The high order functions <italic>map</italic>, <italic>inter</italic>, <italic>scan</italic>, and <italic>transp</italic> allow to apply different transformations on the input streams.</p>
        <table-wrap id="futureinternet-04-00865-t002" position="float">
          <object-id pub-id-type="pii">futureinternet-04-00865-t002_Table 2</object-id>
          <label>Table 2</label>
          <caption>
            <p>Stream operators in Haskell (<inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-i110.tif"/> stands for the <inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-i111.tif"/> datatype).</p>
          </caption>
<table>
<thead>
 <tr>
  <th align="left" valign="middle">Type</th>
  <th align="center" valign="middle">Function</th>
  <th align="center" valign="middle">Signature</th>
 </tr>
 </thead>
 <tbody>
 <tr style="border-top: solid thin">
  <td align="left" valign="middle">Basic</td>
  <td align="center" valign="middle">constructor</td>
  <td align="center" valign="middle"><inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-i112.tif"/> ::a -<inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-i113.tif"/> S
  a -<inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-i113.tif"/> Sa</td>
 </tr>
 <tr>
  <td align="left" valign="middle"> </td>
  <td align="center" valign="middle">extract the first element</td>
  <td align="center" valign="middle">head:: S a -<inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-i113.tif"/> a</td>
 </tr>
 <tr>
  <td align="left" valign="middle"> </td>
  <td align="center" valign="middle">extracts the sequence following the
  stream’s head</td>
  <td align="center" valign="middle">tail:: S a -<inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-i113.tif"/> S a</td>
 </tr>
 <tr>
  <td align="left" valign="middle"> </td>
  <td align="center" valign="middle">takes a stream and returns all its
  finite prefixes</td>
  <td align="center" valign="middle">inits :: S a -<inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-i113.tif"/> S ([a])</td>
 </tr>
 <tr>
  <td align="left" valign="middle"> </td>
  <td align="center" valign="middle">takes a stream and returns all its
  suffixes</td>
  <td align="center" valign="middle">tails :: S a -<inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-i113.tif"/> S (S a)</td>
 </tr>
 <tr style="border-top: solid thin">
  <td align="left" valign="middle">Transformation</td>
  <td align="center" valign="middle">applies a function over all elements</td>
  <td align="center" valign="middle">map :: (a -<inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-i113.tif"/> b) -<inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-i113.tif"/> S a -<inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-i113.tif"/> S b</td>
 </tr>
 <tr>
  <td align="left" valign="middle"> </td>
  <td align="center" valign="middle">interleaves 2 streams</td>
  <td align="center" valign="middle">inter :: Stream a -<inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-i113.tif"/> Stream a
  -<inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-i113.tif"/> S a</td>
 </tr>
 <tr>
  <td align="left" valign="middle"> </td>
  <td align="center" valign="middle">yields a stream of successive reduced
  values</td>
  <td align="center" valign="middle">scan :: (a -<inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-i113.tif"/> b -<inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-i113.tif"/> a) -<inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-i113.tif"/> a -<inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-i113.tif"/> S b -<inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-i113.tif"/> S a</td>
 </tr>
 <tr>
  <td align="left" valign="middle"> </td>
  <td align="center" valign="middle">computes the transposition of a stream
  of streams</td>
  <td align="center" valign="middle">transp :: S (S a) -<inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-i113.tif"/> S (S a)</td>
 </tr>
 <tr style="border-top: solid thin">
  <td align="left" valign="middle">Building streams</td>
  <td align="center" valign="middle">repeated applications of a function</td>
  <td align="center" valign="middle">iterate :: (a -<inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-i113.tif"/> a) -<inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-i113.tif"/> a -<inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-i113.tif"/> S a</td>
 </tr>
 <tr>
  <td align="left" valign="middle"> </td>
  <td align="center" valign="middle">constant streams</td>
  <td align="center" valign="middle">repeat :: a -<inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-i113.tif"/> S a</td>
 </tr>
 <tr>
  <td align="left" valign="middle"> </td>
  <td align="center" valign="middle">returns the infinite repetition of a set
  of values</td>
  <td align="center" valign="middle">cycle :: [a] -<inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-i113.tif"/> S a</td>
 </tr>
 <tr style="border-top: solid thin">
  <td align="left" valign="middle">Extracting sublists</td>
  <td align="center" valign="middle">takes the first elements</td>
  <td align="center" valign="middle">take :: Int -<inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-i113.tif"/> S a -<inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-i113.tif"/> [a]</td>
 </tr>
 <tr>
  <td align="left" valign="middle"> </td>
  <td align="center" valign="middle">drops the first elements</td>
  <td align="center" valign="middle">drop :: Int -<inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-i113.tif"/> S a -<inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-i113.tif"/> S a</td>
 </tr>
 <tr>
  <td align="left" valign="middle"> </td>
  <td align="center" valign="middle">returns the longest prefix for which p
  holds</td>
  <td align="center" valign="middle">takeWhile :: (a -<inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-i113.tif"/> Bool) -<inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-i113.tif"/> S a -<inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-i113.tif"/> [a]</td>
 </tr>
 <tr>
  <td align="left" valign="middle"> </td>
  <td align="center" valign="middle">returns the suffix remaining after
  takeWhile</td>
  <td align="center" valign="middle">dropWhile :: (a -<inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-i113.tif"/> Bool) -<inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-i113.tif"/> S a -<inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-i113.tif"/> S a</td>
 </tr>
 <tr>
  <td align="left" valign="middle"> </td>
  <td align="center" valign="middle">removes elements that do not satisfy p</td>
  <td align="center" valign="middle">filter :: a -<inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-i113.tif"/> Bool) -<inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-i113.tif"/> S a -<inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-i113.tif"/> S a</td>
 </tr>
 <tr style="border-top: solid thin">
  <td align="left" valign="middle">Index</td>
  <td align="center" valign="middle">returns the element of the stream at
  index n</td>
  <td align="center" valign="middle">!!:: S a -<inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-i113.tif"/> Int -<inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-i113.tif"/> a</td>
 </tr>
 <tr>
  <td align="left" valign="middle"> </td>
  <td align="center" valign="middle">returns the index of the first element
  equal with <inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-i079.tif"/></td>
  <td align="center" valign="middle">elemIndex :: Eq a =<inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-i113.tif"/> a -<inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-i113.tif"/> S a -<inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-i113.tif"/> Int</td>
 </tr>
 <tr>
  <td align="left" valign="middle"> </td>
  <td align="center" valign="middle">returns the index of the first element
  satisfying p</td>
  <td align="center" valign="middle">findIndex :: (a -<inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-i113.tif"/> Bool) -<inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-i113.tif"/> S a -<inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-i113.tif"/> Int</td>
 </tr>
 <tr style="border-top: solid thin">
  <td align="left" valign="middle">Aggregation</td>
  <td align="center" valign="middle">returns a list of corresponding pairs
  from 2 streams</td>
  <td align="center" valign="middle">zip :: S a -<inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-i113.tif"/> S b -<inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-i113.tif"/> S (a,b)</td>
 </tr>
 <tr>
  <td align="left" valign="middle"> </td>
  <td align="center" valign="middle">combines two streams based on a given function</td>
  <td align="center" valign="middle">ZipWith :: (a -<inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-i113.tif"/> b -<inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-i113.tif"/> c) -<inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-i113.tif"/> S a -<inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-i113.tif"/> S b -<inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-i113.tif"/> S c</td>
 </tr>
 </tbody>
</table>
</table-wrap>
        <p>For instance, the <italic>map</italic> function converts each element within a stream, according to a given conversion function. The conversion takes place when the converted values are required by other function. Based on a given operation, the <italic>scan</italic> function aggregates the elements within a stream into a single value. For computing at each step the sum of a stream of transactional data, the following expression can be used: 
        <disp-formula id="futureinternet-04-00865-i114">
          <inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-i114.tif"/>
          </disp-formula></p>
        <p>It provides as output the infinite stream <inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-i115.tif"/>, where the current value sums all the previously ones.</p>
        <p>The aggregation functions combine elements from two input streams in order to generate a continuous output stream. Consider one wants to add the corresponding values from two financial data streams <inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-i086.tif"/> and <inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-i116.tif"/>, expressed by two different currencies: 
        <disp-formula id="futureinternet-04-00865-i117">
          <inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-i117.tif"/>
          </disp-formula>
        where the conversion function is applied on each element from <inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-i116.tif"/>.</p>
        <p>The aggregation of two streams takes place according to an aggregation policy, depending on the time or the configuration of the new tuples. The policy is a function provided as the first input argument for the high order function <italic>zipWith</italic>, which has three input parameters and one output: 
        <disp-formula id="futureinternet-04-00865-i118">
          <inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-i118.tif"/>
          </disp-formula></p>
        <p>The elements of the input streams are combined according to the <italic>policy</italic>. The <italic>zipWith</italic> function continuously produces the output stream <italic>outStream</italic> with the elements from the input streams <italic>inStream1</italic> and <italic>inStream2</italic> aggregated based on the given policy. Similarly, generating new streams can be done based on a policy <italic>f</italic>, as in: <inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-i119.tif"/>. An incoming stream can be dynamically split into two streams, based on a predicate <italic>p</italic>.</p>
      </sec>
      <sec>
        <title>4.3. The Mapping Module</title>
        <p>Two sources of knowledge are exploited to reason on data collected by the sensors. On the one hand, one needs detailed information about sensors, measurements domain and units, or accuracy. On the other hand, domain specific axioms are exploited when reasoning on a specific scenario.</p>
        <p>A partial view of the sensor ontology is formalised in DL in <xref ref-type="fig" rid="futureinternet-04-00865-f003">Figure 3</xref>. <xref ref-type="fig" rid="futureinternet-04-00865-f004">Figure 4</xref> graphically illustrates the <italic>TBox</italic> and <italic>ABox</italic> of the ontology. The sensor <inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-i086.tif"/> is an instance of the class <italic>ActiveRDF</italic> and it measures temperature with an accuracy of 0.5 <inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-i036.tif"/>C. The current temperature is 6 <inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-i036.tif"/>C, and the measurement frequency is six observations per minute (<xref ref-type="fig" rid="futureinternet-04-00865-f004">Figure 4</xref>). Noting that <italic>Temperature</italic> is a <italic>PhysicalQuality</italic> (axiom 9 in <xref ref-type="fig" rid="futureinternet-04-00865-f003">Figure 3</xref>), there is a role <italic>measure</italic> between the sensor <inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-i086.tif"/> and the temperature value <inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-i120.tif"/>, as axiom 1 defines. The corresponding RDF stream for the sensor <inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-i086.tif"/> looks like: 
        <disp-formula id="futureinternet-04-00865-i121">
          <inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-i121.tif"/>
          </disp-formula>
        where at each 10 seconds the measured value increases with one degree Celsius, from 4 <inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-i036.tif"/>C to 6 <inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-i036.tif"/>C.</p>
        <p>The ontology is translated into strict rules based on the conceptual instrumentation introduced in <xref ref-type="sec" rid="sec3dot3-futureinternet-04-00865">Section 3.3</xref>, in order to reason only within plausible logic. The resulted strict rules and facts appear in <xref ref-type="fig" rid="futureinternet-04-00865-f005">Figure 5</xref>. Observe that the terminology is considered static, whilst assertions may vary in time in <xref ref-type="fig" rid="futureinternet-04-00865-f005">Figure 5</xref>.</p>
        <p>Rapid developments of the sensor technology raises the problem of continuously updating the sensor ontology. The system is able to handle this situation by treating the ontology as a stream of description logic axioms. When applying the high order function <inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-i122.tif"/> on the transformation function <inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-i089.tif"/>, each axiom in the description logic is converted to strict rules as soon as it appears: 
        <disp-formula id="futureinternet-04-00865-i123">
          <inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-i123.tif"/>
          </disp-formula>
        outputs the infinite list: 
        <disp-formula id="futureinternet-04-00865-i124">
          <inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-i124.tif"/>
          </disp-formula></p>
        <p>The main advantage consists in the possibility to dynamically include new background knowledge in the system.</p>
        <fig id="futureinternet-04-00865-f003" position="anchor">
          <label>Figure 3</label>
          <caption>
            <p>Partial view of the sensor ontology.</p>
          </caption>
          <graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-g003.tif"/>
        </fig>
        <fig id="futureinternet-04-00865-f004" position="anchor">
          <label>Figure 4</label>
          <caption>
            <p>Graphical view of the sensor ontology.</p>
          </caption>
          <graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-g004.tif"/>
        </fig>
        <fig id="futureinternet-04-00865-f005" position="anchor">
          <label>Figure 5</label>
          <caption>
            <p>Translating the sensor ontology.</p>
          </caption>
          <graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-g005.tif"/>
        </fig>
      </sec>
      <sec>
        <title>4.4. Efficiency Remarks</title>
        <p>The system incorporates the Decisive Plausible Logic tool [<xref ref-type="bibr" rid="B27-futureinternet-04-00865">27</xref>] A Haskell glue module that exports functions requesting proofs [<xref ref-type="bibr" rid="B28-futureinternet-04-00865">28</xref>] is used to make the connection with the other modules. The efficiency is mandatory when one needs to reason on huge data in real time. The efficiency of the proposed solution is based on the following vectors:</p>
		<list list-type="bullet">
		<list-item>
        <p>The implementation of a family of defeasible logic is polynomial [<xref ref-type="bibr" rid="B7-futureinternet-04-00865">7</xref>]. Plausible logic, being a particular case of defeasible reasoning, belongs to this efficiency class. The extensive experiments in [<xref ref-type="bibr" rid="B7-futureinternet-04-00865">7</xref>] have proved that the family of defeasible reasoning tools that we integrated in our framework can deal with knowledge bases up to hundreds of thousands of rules, with a theoretical complexity of O(N log N). The cpu time for proving a conclusion was 0.4 seconds in case of 4200 contradictory rules, 3.83 seconds for 42,000 rules, and 21.15 seconds for 210,000 rules. This cpu time includes the time consumed by the garbage collector in Haskell [<xref ref-type="bibr" rid="B7-futureinternet-04-00865">7</xref>]. </p>
		</list-item>
		<list-item>
        <p>Under the assumption that the domain is static, the translation from description logic axioms into strict rules can be performed offline, before taking real-time decisions. The resulted Description Logic Programs are sub-fragments of Horn logics and their complexity is polynomial, as reported in [<xref ref-type="bibr" rid="B8-futureinternet-04-00865">8</xref>]. </p>
		</list-item>
		<list-item>
        <p>Only few general ontologies and few medical ontologies have this size. Most of the domain ontologies do no reach the comparable size of 4200 axioms. Depending on the time constraints for the given problem, a smaller ontology can be imported instead of a refined one. </p>
		</list-item>
		<list-item>
        <p>The plausible rules and preferences added by the human expert also do not go up to thousands of rules. Given the experience from the expert systems domain, few of the existing commercial expert systems do contain thousands of rules [<xref ref-type="bibr" rid="B28-futureinternet-04-00865">28</xref>]. </p>
		</list-item>
		<list-item>
        <p>The possibility to select the current inference algorithm among <inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-i021.tif"/> can also be exploited to adjust the reasoning task to the complexity of the current real-time decision. </p>
		</list-item>
		</list>
      </sec>
    </sec>
    <sec id="sec5-futureinternet-04-00865">
      <title>5. Running Scenario</title>
      <p>The scenario regards supporting real-time supply chain decisions based on RFID streams. Consider the stock management of an online shop. RFID sensors are used to count the items entering the warehouse from two locations. The items leave the warehouse from exit points, corresponding to three output streams. Monitoring an item like <italic>Milk</italic> implies monitoring several subcategories as <italic>WholeMilk</italic> and <italic>LowFatMilk</italic>. The retailer sells a specific item <inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-i126.tif"/> of whole milk, and two types of low fat milk <inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-i127.tif"/> and <inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-i128.tif"/>. Some peak periods are associated to each commercialised item.</p>
      <p>This background knowledge is formalised in <xref ref-type="fig" rid="futureinternet-04-00865-f006">Figure 6</xref>. The corresponding strict rules are depicted in the upper part of the <xref ref-type="fig" rid="futureinternet-04-00865-f007">Figure 7</xref>. During peak periods for an item, the usual supply action is blocked by the defeater <inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-i129.tif"/>. The plausible rule <inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-i130.tif"/> says that if the milk stock <inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-i093.tif"/> is below the alert threshold <inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-i131.tif"/>, the <italic>NormalSupply</italic> action should be executed. <italic>NormalSupply</italic> assures a stock value of <inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-i132.tif"/>. Instead, the <italic>PeakSupply</italic> action is derived by the rule <inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-i129.tif"/>.</p>
      <fig id="futureinternet-04-00865-f006" position="anchor">
        <label>Figure 6</label>
        <caption>
          <p>Domain knowledge sample for milk monitoring.</p>
        </caption>
        <graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-g006.tif"/>
      </fig>
      <fig id="futureinternet-04-00865-f007" position="anchor">
        <label>Figure 7</label>
        <caption>
          <p>Plausible knowledge base.</p>
        </caption>
        <graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-g007.tif"/>
      </fig>
      <p>If there is an alternative item<italic>Z</italic> for the <italic>Milk</italic> product and the stock of the alternative is larger than the threshold <inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-i133.tif"/>, this implies not to supply the higher quantity <inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-i132.tif"/> (the rule <inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-i134.tif"/>). Whether the action is executed or not depends on the priority relation between the rules <inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-i134.tif"/> and <inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-i135.tif"/>,</p>
      <p>The sensor related information can be integrated when reasoning. If the sensor <italic>S</italic> seems not to function according to the specifications in the ontology, it is plausible to be broken (the rule <inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-i136.tif"/>). A broken sensor defeats the stock information asserted in the knowledge base related to the measured item (the defeater <inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-i137.tif"/>).</p>
      <p>The merchandise flow is simulated by generating infinite input and output streams. Assuming that the function <inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-i138.tif"/> based on the list of available items returns a random item. The infinite output stream for the payment point <inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-i139.tif"/> would be: 
      <disp-formula id="futureinternet-04-00865-i140">
          <inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-i140.tif"/>
          </disp-formula>
      where <italic>l</italic> is a list with the available items in the simulation. Consider the following RDF stream <inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-i086.tif"/> of sold items <italic>(item sold price)</italic> and the associated time of measurement, where the predicate <italic>sold</italic> and the <italic>price</italic> value are removed for clarity reasons: 
      <disp-formula id="futureinternet-04-00865-i141">
          <inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-i141.tif"/>
          </disp-formula><disp-formula id="futureinternet-04-00865-i142">
          <inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-i142.tif"/>
          </disp-formula></p>
      <p>The <italic>updateStock</italic> function continuously computes the current stocks based on the <inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-i086.tif"/> stream. Based on the fact <inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-i143.tif"/> and the rule <inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-i038.tif"/>, one can conclude that <inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-i126.tif"/> is a milk item. Similarly, based on the facts <inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-i144.tif"/> and <inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-i145.tif"/>, the rule <inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-i039.tif"/> categorises the instances <inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-i127.tif"/> and <inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-i128.tif"/> as milk items. The filter function is used to monitor each milk item, either low fat or not: 
      <disp-formula id="futureinternet-04-00865-i146">
          <inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-i146.tif"/>
          </disp-formula></p>
      <p>Here, the predicate <italic>milk</italic> returns true if the input is of type <italic>Milk</italic> according to the rules <inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-i038.tif"/> or <inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-i039.tif"/>. The <italic>map</italic> function is used to select only the element <italic>item</italic> from the tuples <inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-i147.tif"/> from the stream <inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-i086.tif"/>: the composition <inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-i148.tif"/> is used to extract the first element in the first tuple.</p>
      <p>The stream <italic>milkItems</italic> collects all the items of type milk every time an item occurs. Based on <inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-i086.tif"/>, the <italic>milkItems</italic> is: </p>
      <disp-formula id="futureinternet-04-00865-i149">
          <inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-i149.tif"/>
          </disp-formula>
      <p>The <inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-i150.tif"/> function is activated to compute the available stock for a specific category of products. Consider the current stock for milk is 102 and the threshold <inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-i131.tif"/> for triggering the alarm is 100. Assume the function <italic>updateStock</italic> is called with the first input parameter <italic>milk</italic> and the second parameter <italic>milkItems</italic>. At time 1, <inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-i127.tif"/> being low fat milk, identified as a subtype of milk, the stock is updated at the value 101. At instance 3, <inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-i126.tif"/> being fat milk, identified also as a subtype of milk, the stock is updated at the value 100. At time step 6, <inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-i128.tif"/>, the stock value reaches <inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-i151.tif"/>. At this moment, the predicate <inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-i152.tif"/> becomes valid.</p>
      <p>Consequently, the rule <inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-i130.tif"/> in <xref ref-type="fig" rid="futureinternet-04-00865-f007">Figure 7</xref> is plausibly activated. The algorithm checks whether any defeater or stronger rule can block the derivation of the conclusion of the rule <inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-i130.tif"/>. If no one blocks it, the action <italic>normalSupply</italic> for <italic>milk</italic> of value <inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-i132.tif"/> is executed. If, for instance in case of a peak period, the defeater <inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-i129.tif"/> is active, since <inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-i129.tif"/> is stronger than the rule <inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-i130.tif"/>, it successfully blocks the derivation of the action <italic>normalSupply</italic>. Instead, the consequent of the rule <inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-i134.tif"/> will be executed.</p>
      <p>Thus, by combining ontological knowledge with plausible rules, one can reason with generic products (<italic>Milk</italic>), even if the streams report data regarding instances of specific products (<italic>WholeMilk</italic> and <italic>LowFatMilk</italic>). The benefit here consists in minimising the number of business rules that should be added within the system.</p>
      <p>The current implementation was tested only on the above proof of concept scenario. The scenario involves a small number of axioms from the sensor ontology and from the milk-domain ontology, and also few plausible rules manually constructed to test the plausible reasoning mechanism. For the simulated ten streams of items with a time delay of 1 s for each item, the decision was taken in real time.</p>
    </sec>
    <sec sec-type="conclusions" id="sec6-futureinternet-04-00865">
      <title>6. Conclusions</title>
      <p>The proposed semantic based stream management system is characterised by: (i) continuous situation awareness and capability to handle theoretically infinite data streams due to the lazy evaluation mechanism; (ii) aggregating heterogeneous sensors based on the ontologies translated as strict rules; (iii) handling noise and contradictory information inherently in the context of many sensors, due to the plausible reasoning mechanism. The system represents a step towards building real-time stream processors for knowledge-rich applications.</p>
      <p>With streams being approximate, omniscient rationality is not assumed when performing reasoning tasks on streams. Consequently, we argue that plausible reasoning for real time decision making is adequate. One particularity of our system consists of applying an efficient non-monotonic rule based system [<xref ref-type="bibr" rid="B7-futureinternet-04-00865">7</xref>] when reasoning on gradually occurring stream data. The inference is based on several algorithms, which is in line with the proof layers defined in the Semantic Web stack. Moreover, all the Haskell language is available to extend or adapt the existing code. The efficiency of data driven computation in functional reactive programming is supported by the lazy evaluation mechanism, which allows to use values before they can be known.</p>
      <p>In order to apply our PSRH system to a different domain, three tasks are necessary: </p>
	  <list list-type="order">
		<list-item>
      <p>to translate the domain specific ontologies into strict rules, which is automatically performed by the mapping module; </p>
		</list-item>
		<list-item>
      <p>to design plausible rules and priorities by a domain expert; </p>
		</list-item>
		<list-item>
      <p>to import the most adequate sensor ontology for the current problem (for instance SWEET or W3S SSN Ontology). </p>
		</list-item>
	  </list>
      <p>During the translation part, some knowledge from the ontology may be lost. The axioms stating a subclass of a complex class which is a disjunction cannot be translated into PL, as in <inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-i153.tif"/>. Also, subclases of a complex class expression which is existential quantified cannot be translated, such as <inline-graphic xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="futureinternet-04-00865-i154.tif"/>. Our solution allows this limitation of expressivity in order to perform reasoning in real time within the efficient plausible logic framework.</p>
      <p>The current implementation was tested only on the proof of concept scenario described in <xref ref-type="sec" rid="sec5-futureinternet-04-00865">Section 5</xref>. More extensive experiments are needed to test the large scale efficiency and scalability of the proposed system. At the moment, we are able to support our solution based on the results reported in [<xref ref-type="bibr" rid="B7-futureinternet-04-00865">7</xref>] and based on the reduced complexity of description logic programs [<xref ref-type="bibr" rid="B8-futureinternet-04-00865">8</xref>].</p>
    </sec>
  </body>
  <back>
    <ack>
      <title>Acknowledgments</title>
      <p>We are grateful to the anonymous reviewers for their useful comments. The work has been co-funded by the Sectoral Operational Programme Human Resources Development 2007–2013 of the Romanian Ministry of Labour, Family and Social Protection through the Financial Agreement POSDRU/89/1.5/S/62557.</p>
    </ack>
    <ref-list>
      <title>References</title>
      <ref id="B1-futureinternet-04-00865">
        <label>1.</label>
        <citation citation-type="journal">
          <person-group person-group-type="author">
            <name>
              <surname>Christin</surname>
              <given-names>D.</given-names>
            </name>
            <name>
              <surname>Mogre</surname>
              <given-names>P.S.</given-names>
            </name>
            <name>
              <surname>Hollick</surname>
              <given-names>M.</given-names>
            </name>
          </person-group>
          <article-title>Survey on wireless sensor network technologies for industrial automation: The security and quality of service perspectives</article-title>
          <source>Future Internet</source>
          <year>2010</year>
          <volume>2</volume>
          <fpage>96</fpage>
          <lpage>125</lpage>
          <pub-id pub-id-type="doi">10.3390/fi2020096</pub-id>
        </citation>
      </ref>
      <ref id="B2-futureinternet-04-00865">
        <label>2.</label>
        <citation citation-type="book">
          <person-group person-group-type="author">
            <name>
              <surname>Le-Phuoc</surname>
              <given-names>D.</given-names>
            </name>
            <name>
              <surname>Parreira</surname>
              <given-names>J.X.</given-names>
            </name>
            <name>
              <surname>Hausenblas</surname>
              <given-names>M.</given-names>
            </name>
            <name>
              <surname>Hauswirth</surname>
              <given-names>M.</given-names>
            </name>
          </person-group>
          <source>Unifying Stream Data and Linked Open Data</source>
          <publisher-name>Technical Report for Digital Enterprise Research Institute (DERI)</publisher-name>
          <publisher-loc>Galway, Ireland</publisher-loc>
          <year>2010</year>
        </citation>
      </ref>
      <ref id="B3-futureinternet-04-00865">
        <label>3.</label>
        <citation citation-type="journal">
          <person-group person-group-type="author">
            <name>
              <surname>Valle</surname>
              <given-names>E.D.</given-names>
            </name>
            <name>
              <surname>Ceri</surname>
              <given-names>S.</given-names>
            </name>
            <name>
              <surname>van Harmelen</surname>
              <given-names>F.</given-names>
            </name>
            <name>
              <surname>Fensel</surname>
              <given-names>D.</given-names>
            </name>
          </person-group>
          <article-title>It’s a streaming world! Reasoning upon rapidly changing information</article-title>
          <source>IEEE Intell. Syst.</source>
          <year>2009</year>
          <volume>24</volume>
          <fpage>83</fpage>
          <lpage>89</lpage>
          <pub-id pub-id-type="doi">10.1109/MIS.2009.125</pub-id>
        </citation>
      </ref>
      <ref id="B4-futureinternet-04-00865">
        <label>4.</label>
        <citation citation-type="journal">
          <person-group person-group-type="author">
            <name>
              <surname>Granitzer</surname>
              <given-names>M.</given-names>
            </name>
            <name>
              <surname>Sabol</surname>
              <given-names>V.</given-names>
            </name>
            <name>
              <surname>Onn</surname>
              <given-names>K.W.</given-names>
            </name>
            <name>
              <surname>Lukose</surname>
              <given-names>D.</given-names>
            </name>
            <name>
              <surname>Tochtermann</surname>
              <given-names>K.</given-names>
            </name>
          </person-group>
          <article-title>Ontology alignment—A survey with focus on visually supported semi-automatic techniques</article-title>
          <source>Future Internet</source>
          <year>2010</year>
          <volume>2</volume>
          <fpage>238</fpage>
          <lpage>258</lpage>
          <pub-id pub-id-type="doi">10.3390/fi2030238</pub-id>
        </citation>
      </ref>
      <ref id="B5-futureinternet-04-00865">
        <label>5.</label>
        <citation citation-type="journal">
          <person-group person-group-type="author">
            <name>
              <surname>Barbieri</surname>
              <given-names>D.</given-names>
            </name>
            <name>
              <surname>Braga</surname>
              <given-names>D.</given-names>
            </name>
            <name>
              <surname>Ceri</surname>
              <given-names>S.</given-names>
            </name>
            <name>
              <surname>Valle</surname>
              <given-names>E.D.</given-names>
            </name>
            <name>
              <surname>Grossniklaus</surname>
              <given-names>M.</given-names>
            </name>
          </person-group>
          <article-title>Incremental reasoning on streams and rich background knowledge</article-title>
          <source>Lect. Notes Comput. Sci.</source>
          <year>2010</year>
          <volume>6088</volume>
          <fpage>1</fpage>
          <lpage>15</lpage>
        </citation>
      </ref>
      <ref id="B6-futureinternet-04-00865">
        <label>6.</label>
        <citation citation-type="journal">
          <person-group person-group-type="author">
            <name>
              <surname>Savage</surname>
              <given-names>N.</given-names>
            </name>
          </person-group>
          <article-title>Twitter as medium and message</article-title>
          <source>Commun. ACM</source>
          <year>2011</year>
          <volume>54</volume>
          <fpage>18</fpage>
          <lpage>20</lpage>
          <pub-id pub-id-type="doi">10.1145/1897852.1897860</pub-id>
        </citation>
      </ref>
      <ref id="B7-futureinternet-04-00865">
        <label>7.</label>
        <citation citation-type="journal">
          <person-group person-group-type="author">
            <name>
              <surname>Maher</surname>
              <given-names>M.J.</given-names>
            </name>
            <name>
              <surname>Rock</surname>
              <given-names>A.</given-names>
            </name>
            <name>
              <surname>Antoniou</surname>
              <given-names>G.</given-names>
            </name>
            <name>
              <surname>Billington</surname>
              <given-names>D.</given-names>
            </name>
            <name>
              <surname>Miller</surname>
              <given-names>T.</given-names>
            </name>
          </person-group>
          <article-title>Efficient defeasible reasoning systems</article-title>
          <source>Int. J. Artif. Intell. Tools</source>
          <year>2001</year>
          <volume>10</volume>
          <fpage>483</fpage>
          <lpage>501</lpage>
          <pub-id pub-id-type="doi">10.1142/S0218213001000623</pub-id>
        </citation>
      </ref>
      <ref id="B8-futureinternet-04-00865">
        <label>8.</label>
        <citation citation-type="confproc">
          <person-group person-group-type="author">
            <name>
              <surname>Krötzsch</surname>
              <given-names>M.</given-names>
            </name>
            <name>
              <surname>Rudolph</surname>
              <given-names>S.</given-names>
            </name>
            <name>
              <surname>Hitzler</surname>
              <given-names>P.</given-names>
            </name>
          </person-group>
          <article-title>Complexity boundaries for horn descriptionl logics</article-title>
          <source>Proceedings of the 22nd national conference on Artificial intelligence</source>
          <publisher-name>AAAI Press</publisher-name>
          <publisher-loc>Palo Alto, CA, USA</publisher-loc>
          <conf-loc>Toronto, Canada</conf-loc>
          <conf-date>22–26 July 2012</conf-date>
          <year>2007</year>
          <fpage>452</fpage>
          <lpage>457</lpage>
        </citation>
      </ref>
      <ref id="B9-futureinternet-04-00865">
        <label>9.</label>
        <citation citation-type="book">
          <person-group person-group-type="author">
            <name>
              <surname>Letia</surname>
              <given-names>I.A.</given-names>
            </name>
            <name>
              <surname>Groza</surname>
              <given-names>A.</given-names>
            </name>
          </person-group>
          <source>Description Plausible Logic Programs for Stream Reasoning</source>
          <person-group person-group-type="editor">
            <name>
              <surname>Filipe</surname>
              <given-names>J.</given-names>
            </name>
            <name>
              <surname>Fred</surname>
              <given-names>A.L.N.</given-names>
            </name>
          </person-group>
          <publisher-name>SciTePress</publisher-name>
          <publisher-loc>Setubal, Portugal</publisher-loc>
          <year>2012</year>
          <fpage>560</fpage>
          <lpage>566</lpage>
        </citation>
      </ref>
      <ref id="B10-futureinternet-04-00865">
        <label>10.</label>
        <citation citation-type="journal">
          <person-group person-group-type="author">
            <name>
              <surname>Calbimonte</surname>
              <given-names>J.P.</given-names>
            </name>
            <name>
              <surname>Corcho</surname>
              <given-names>Ó.</given-names>
            </name>
            <name>
              <surname>Gray</surname>
              <given-names>A.J.G.</given-names>
            </name>
          </person-group>
          <article-title>Enabling ontology-based access to streaming data sources</article-title>
          <source>Lect. Notes Comput. Sci.</source>
          <year>2010</year>
          <volume>6496</volume>
          <fpage>96</fpage>
          <lpage>111</lpage>
        </citation>
      </ref>
      <ref id="B11-futureinternet-04-00865">
        <label>11.</label>
        <citation citation-type="journal">
          <person-group person-group-type="author">
            <name>
              <surname>Palopoli</surname>
              <given-names>L.</given-names>
            </name>
            <name>
              <surname>Terracina</surname>
              <given-names>G.</given-names>
            </name>
            <name>
              <surname>Ursino</surname>
              <given-names>D.</given-names>
            </name>
          </person-group>
          <article-title>A plausibility description logic for handling information sources with heterogeneous data representation formats</article-title>
          <source>Ann. Math. Artif. Intell.</source>
          <year>2003</year>
          <volume>39</volume>
          <fpage>385</fpage>
          <lpage>430</lpage>
        <pub-id pub-id-type="doi">10.1023/A:1026094327713</pub-id></citation>
      </ref>
      <ref id="B12-futureinternet-04-00865">
        <label>12.</label>
        <citation citation-type="confproc">
          <person-group person-group-type="author">
            <name>
              <surname>Heintz</surname>
              <given-names>F.</given-names>
            </name>
            <name>
              <surname>Kvarnström</surname>
              <given-names>J.</given-names>
            </name>
            <name>
              <surname>Doherty</surname>
              <given-names>P.</given-names>
            </name>
          </person-group>
          <article-title>Stream reasoning in DyKnow: A knowledge processing middleware system</article-title>
          <source>Presented at 1st International Workshop on Stream Reasoning,</source>
          <conf-loc>Heraklion, Crete, Greece</conf-loc>
          <conf-date>31 May 2009</conf-date>
        </citation>
      </ref>
      <ref id="B13-futureinternet-04-00865">
        <label>13.</label>
        <citation citation-type="journal">
          <person-group person-group-type="author">
            <name>
              <surname>Bolles</surname>
              <given-names>A.</given-names>
            </name>
            <name>
              <surname>Grawunder</surname>
              <given-names>M.</given-names>
            </name>
            <name>
              <surname>Jacobi</surname>
              <given-names>J.</given-names>
            </name>
          </person-group>
          <article-title>Streaming SPARQL extending SPARQL to process data streams</article-title>
          <source>Lect. Notes Comput. Sci.</source>
          <year>2008</year>
          <volume>5021</volume>
          <fpage>448</fpage>
          <lpage>462</lpage>
        </citation>
      </ref>
      <ref id="B14-futureinternet-04-00865">
        <label>14.</label>
        <citation citation-type="journal">
          <person-group person-group-type="author">
            <name>
              <surname>Anicic</surname>
              <given-names>D.</given-names>
            </name>
            <name>
              <surname>Fodor</surname>
              <given-names>P.</given-names>
            </name>
            <name>
              <surname>Rudolph</surname>
              <given-names>S.</given-names>
            </name>
            <name>
              <surname>Stühmer</surname>
              <given-names>R.</given-names>
            </name>
            <name>
              <surname>Stojanovic</surname>
              <given-names>N.</given-names>
            </name>
            <name>
              <surname>Studer</surname>
              <given-names>R.</given-names>
            </name>
          </person-group>
          <article-title>A rule-based language for complex event processing and reasoning</article-title>
          <source>Lect. Notes Comput. Sci.</source>
          <year>2010</year>
          <volume>6333</volume>
          <fpage>42</fpage>
          <lpage>57</lpage>
        </citation>
      </ref>
      <ref id="B15-futureinternet-04-00865">
        <label>15.</label>
        <citation citation-type="journal">
          <person-group person-group-type="author">
            <name>
              <surname>Anicic</surname>
              <given-names>D.</given-names>
            </name>
            <name>
              <surname>Rudolph</surname>
              <given-names>S.</given-names>
            </name>
            <name>
              <surname>Fodor</surname>
              <given-names>P.</given-names>
            </name>
            <name>
              <surname>Stojanovic</surname>
              <given-names>N.</given-names>
            </name>
          </person-group>
          <article-title>Retractable complex event processing and stream reasoning</article-title>
          <source>Lect. Notes Comput. Sci.</source>
          <year>2011</year>
          <volume>6826</volume>
          <fpage>122</fpage>
          <lpage>137</lpage>
        </citation>
      </ref>
      <ref id="B16-futureinternet-04-00865">
        <label>16.</label>
        <citation citation-type="journal">
          <person-group person-group-type="author">
            <name>
              <surname>Corcho</surname>
              <given-names>Ó.</given-names>
            </name>
            <name>
              <surname>Garcia-Castro</surname>
              <given-names>R.</given-names>
            </name>
          </person-group>
          <article-title>Five challenges for the Semantic Sensor Web</article-title>
          <source>Semant. Web</source>
          <year>2010</year>
          <volume>1</volume>
          <fpage>121</fpage>
          <lpage>125</lpage>
        </citation>
      </ref>
      <ref id="B17-futureinternet-04-00865">
        <label>17.</label>
        <citation citation-type="web">
          <article-title>ASPIRE Project (Advanced Sensors and lightweight Programmable middleware for Innovative Rfid Enterprise applications)</article-title>
          <access-date>(accessed on 15 October 2012)</access-date>
          <comment>Available online:<ext-link xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="http://www.fp7-aspire.eu/" ext-link-type="uri">http://www.fp7-aspire.eu/</ext-link></comment>
        </citation>
      </ref>
      <ref id="B18-futureinternet-04-00865">
        <label>18.</label>
        <citation citation-type="web">
          <article-title>Sensei Project</article-title>
          <access-date>(accessed on 15 October 2012)</access-date>
          <comment>Available online:<ext-link xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="http://www.ict-sensei.org/Sensei090422/" ext-link-type="uri">http://www.ict-sensei.org/Sensei090422/</ext-link></comment>
        </citation>
      </ref>
      <ref id="B19-futureinternet-04-00865">
        <label>19.</label>
        <citation citation-type="journal">
          <person-group person-group-type="author">
            <name>
              <surname>Ruta</surname>
              <given-names>M.</given-names>
            </name>
            <name>
              <surname>Colucci</surname>
              <given-names>S.</given-names>
            </name>
            <name>
              <surname>Scioscia</surname>
              <given-names>F.</given-names>
            </name>
            <name>
              <surname>Sciascio</surname>
              <given-names>E.D.</given-names>
            </name>
            <name>
              <surname>Donini</surname>
              <given-names>F.M.</given-names>
            </name>
          </person-group>
          <article-title>Finding commonalities in RFID semantic streams</article-title>
          <source>Procedia Comput. Sci.</source>
          <year>2011</year>
          <volume>5</volume>
          <fpage>857</fpage>
          <lpage>864</lpage>
          <pub-id pub-id-type="doi">10.1016/j.procs.2011.07.118</pub-id>
        </citation>
      </ref>
      <ref id="B20-futureinternet-04-00865">
        <label>20.</label>
        <citation citation-type="book">
          <person-group person-group-type="author">
            <name>
              <surname>Rock</surname>
              <given-names>A.</given-names>
            </name>
          </person-group>
          <source>Implementation of Decisive Plausible Logic</source>
          <publisher-name>Technical Report for School of Information and Communication Technology, Griffith University</publisher-name>
          <publisher-loc>South Brisbane, Australia</publisher-loc>
          <year>2010</year>
        </citation>
      </ref>
      <ref id="B21-futureinternet-04-00865">
        <label>21.</label>
        <citation citation-type="journal">
          <person-group person-group-type="author">
            <name>
              <surname>Billington</surname>
              <given-names>D.</given-names>
            </name>
            <name>
              <surname>Rock</surname>
              <given-names>A.</given-names>
            </name>
          </person-group>
          <article-title>Propositional plausible logic: Introduction and implementation</article-title>
          <source>Stud. Log.</source>
          <year>2001</year>
          <volume>67</volume>
          <fpage>243</fpage>
          <lpage>269</lpage>
          <pub-id pub-id-type="doi">10.1023/A:1010551204574</pub-id>
        </citation>
      </ref>
      <ref id="B22-futureinternet-04-00865">
        <label>22.</label>
        <citation citation-type="journal">
          <person-group person-group-type="author">
            <name>
              <surname>Governatori</surname>
              <given-names>G.</given-names>
            </name>
            <name>
              <surname>Maher</surname>
              <given-names>M.J.</given-names>
            </name>
            <name>
              <surname>Antoniou</surname>
              <given-names>G.</given-names>
            </name>
            <name>
              <surname>Billington</surname>
              <given-names>D.</given-names>
            </name>
          </person-group>
          <article-title>Argumentation semantics for defeasible logic</article-title>
          <source>J. Log. Comput.</source>
          <year>2004</year>
          <volume>14</volume>
          <fpage>675</fpage>
          <lpage>702</lpage>
          <pub-id pub-id-type="doi">10.1093/logcom/14.5.675</pub-id>
        </citation>
      </ref>
      <ref id="B23-futureinternet-04-00865">
        <label>23.</label>
        <citation citation-type="book">
          <person-group person-group-type="author">
            <name>
              <surname>Baader</surname>
              <given-names>F.</given-names>
            </name>
            <name>
              <surname>Calvanese</surname>
              <given-names>D.</given-names>
            </name>
            <name>
              <surname>McGuinness</surname>
              <given-names>D.</given-names>
            </name>
            <name>
              <surname>Nardi</surname>
              <given-names>D.</given-names>
            </name>
            <name>
              <surname>Patel-Schneider</surname>
              <given-names>P.</given-names>
            </name>
          </person-group>
          <source>The Description Logic Handbook: Theory, Implementation and Applications</source>
          <publisher-name>Cambridge University Press</publisher-name>
          <publisher-loc>New York, NY, USA</publisher-loc>
          <year>2003</year>
        </citation>
      </ref>
      <ref id="B24-futureinternet-04-00865">
        <label>24.</label>
        <citation citation-type="journal">
          <person-group person-group-type="author">
            <name>
              <surname>Gomez</surname>
              <given-names>S.A.</given-names>
            </name>
            <name>
              <surname>Chesnevar</surname>
              <given-names>C.I.</given-names>
            </name>
            <name>
              <surname>Simari</surname>
              <given-names>G.R.</given-names>
            </name>
          </person-group>
          <article-title>A defeasible logic programming approach to the integration of rules and ontologies</article-title>
          <source>J. Comput. Sci. Technol.</source>
          <year>2010</year>
          <volume>10</volume>
          <fpage>74</fpage>
          <lpage>80</lpage>
        </citation>
      </ref>
      <ref id="B25-futureinternet-04-00865">
        <label>25.</label>
        <citation citation-type="confproc">
          <person-group person-group-type="author">
            <name>
              <surname>Grosof</surname>
              <given-names>B.N.</given-names>
            </name>
            <name>
              <surname>Horrocks</surname>
              <given-names>I.</given-names>
            </name>
            <name>
              <surname>Volz</surname>
              <given-names>R.</given-names>
            </name>
            <name>
              <surname>Decker</surname>
              <given-names>S.</given-names>
            </name>
          </person-group>
          <article-title>Description logic programs: Combining logic programs with description logic</article-title>
          <source>Proceedings of the 12th international conference on World Wide Web</source>
          <conf-loc>Budapest, Hungary</conf-loc>
          <conf-date>20–24 May 2003</conf-date>
          <fpage>48</fpage>
          <lpage>57</lpage>
        </citation>
      </ref>
      <ref id="B26-futureinternet-04-00865">
        <label>26.</label>
        <citation citation-type="book">
          <person-group person-group-type="author">
            <name>
              <surname>Stuckenschmidt</surname>
              <given-names>H.</given-names>
            </name>
            <name>
              <surname>Ceri</surname>
              <given-names>S.</given-names>
            </name>
            <name>
              <surname>Valle</surname>
              <given-names>E.D.</given-names>
            </name>
            <name>
              <surname>van Harmelen</surname>
              <given-names>F.</given-names>
            </name>
          </person-group>
          <article-title>Towards expressive stream reasoning</article-title>
          <source>Semantic Challenges in Sensor Networks</source>
          <person-group person-group-type="editor">
            <name>
              <surname>Aberer</surname>
              <given-names>K.</given-names>
            </name>
            <name>
              <surname>Gal</surname>
              <given-names>A.</given-names>
            </name>
            <name>
              <surname>Hauswirth</surname>
              <given-names>M.</given-names>
            </name>
            <name>
              <surname>Sattler</surname>
              <given-names>K.U.</given-names>
            </name>
            <name>
              <surname>Sheth</surname>
              <given-names>A.P.</given-names>
            </name>
          </person-group>
          <publisher-name>Schloss Dagstuhl—Leibniz-Zentrum fuer Informatik</publisher-name>
          <publisher-loc>Dagstuhl, Germany</publisher-loc>
          <year>2010</year>
        </citation>
      </ref>
      <ref id="B27-futureinternet-04-00865">
        <label>27.</label>
        <citation citation-type="web">
          <article-title>Decisive Plausible Logic Tool</article-title>
          <access-date>(accessed on 15 October 2012)</access-date>
          <comment>Available online:<ext-link xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="http://www.ict.griffith.edu.au/arock/DPL/" ext-link-type="uri">http://www.ict.griffith.edu.au/arock/DPL/</ext-link></comment>
        </citation>
      </ref>
      <ref id="B28-futureinternet-04-00865">
        <label>28.</label>
        <citation citation-type="book">
          <person-group person-group-type="author">
            <name>
              <surname>De Hoog</surname>
              <given-names>R.</given-names>
            </name>
          </person-group>
          <source>Expert Systems—Past, Present, and Future</source>
          <publisher-name>Technical Report for Metis, University of Amsterdam</publisher-name>
          <publisher-loc>Amsterdam, the Netherlands</publisher-loc>
          <year>2003</year>
        </citation>
      </ref>
    </ref-list>
  </back>
</article>
