<!DOCTYPE article PUBLIC "-//NLM//DTD JATS (Z39.96) Journal Archiving and Interchange DTD v1.0 20120330//EN" "JATS-archivearticle1.dtd">
<article xmlns:xlink="http://www.w3.org/1999/xlink">
  <front>
    <journal-meta />
    <article-meta>
      <title-group>
        <article-title>The Event Processing ODP</article-title>
      </title-group>
      <contrib-group>
        <contrib contrib-type="author">
          <string-name>Eva Blomqvist</string-name>
          <email>eva.blomqvist@liu.se</email>
          <xref ref-type="aff" rid="aff1">1</xref>
          <xref ref-type="aff" rid="aff2">2</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Mikko Rinne</string-name>
          <email>mikko.rinne@aalto.fi</email>
          <xref ref-type="aff" rid="aff0">0</xref>
          <xref ref-type="aff" rid="aff2">2</xref>
        </contrib>
        <aff id="aff0">
          <label>0</label>
          <institution>Department of Computer Science and Engineering, Aalto University, School of Science</institution>
          ,
          <country country="FI">Finland</country>
        </aff>
        <aff id="aff1">
          <label>1</label>
          <institution>Linkoping University</institution>
          ,
          <addr-line>581 83 Linkoping</addr-line>
          ,
          <country country="SE">Sweden</country>
        </aff>
        <aff id="aff2">
          <label>2</label>
          <institution>Structure of the Event Processing ODP</institution>
        </aff>
      </contrib-group>
      <abstract>
        <p>In this abstract we present a model for representing heterogeneous event objects in RDF, building on pre-existing work and focusing on structural aspects, which have not been addressed before, such as composite event objects encapsulating other event objects. The model extends the SSN and Event-F ontologies, and is available for download in the ODP portal.</p>
      </abstract>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>Introduction</title>
      <p>
        Layered processing of heterogeneous events [
        <xref ref-type="bibr" rid="ref2">2</xref>
        ] with Semantic Web tools [
        <xref ref-type="bibr" rid="ref4">4</xref>
        ] sets
new requirements to the event models to be used. For example, higher-level
composite event objects may encapsulate the lower-level event objects, which
triggered the composite abstraction. By de ning a comprehensive and structured
model for representing event objects, this work addresses current challenges, as
discussed in [
        <xref ref-type="bibr" rid="ref1">1</xref>
        ], and constitutes a novel contribution in event processing based on
Semantic Web technologies. The proposed Content ODP extends current event
models to incorporate aspects of (complex) event processing, and additionally
facilitates the use of generic SPARQL patterns for event object data
management. For a detailed discussion of the requirements underlying the proposed
ODP and related work that has been considered, see [
        <xref ref-type="bibr" rid="ref5">5</xref>
        ]. Our proposed Event
Processing ODP is available in the ODP Portal3. The ODP is very general, and
therefore applicable to any domain where event processing is to be performed. As
with any Content ODP, if needed it can be specialized to include more
domainspeci c classes and properties suiting that domain, by importing the ODP and
adding subclasses, subproperties, and additional domain-dependent axioms in
the importing ontology (or ODP).
important that an event processing ODP is fully aligned with the SSN ontology,
merely extending it with new concepts. Another important e ort is the
EventF ontology5, describing di erent aspects of events in the real world. However,
what we describe are records of events (information about events in a system)
rather than the event itself, c.f. SensorOutput of the SSN ontology.
Nevertheless, Event-F can be used together with our ODP to connect to descriptions of
the event itself, e.g., for exploiting the axiomatization of Event-F. Both the SSN
ontology and Event-F are based on DOLCE Ultra Light 6 (DUL). By extending,
and aligning to, both of these models, our ODP is also aligned to DUL. Another
alignment between the two ontologies has already been made in the SPITFIRE
project, producing an extended ontology7 for describing sensor contexts as well
as energy and network requirements, but this extension still lacks the necessary
classes and properties for describing complex events, which we add through this
ODP.
      </p>
      <p>
        In the terminology of [
        <xref ref-type="bibr" rid="ref3">3</xref>
        ], the event object is the system representation, or
record, of an event (real or system generated). An event object can be either a
simple event object or a complex event object, depending on if it abstracts
(summarizes or represents) other, more low-level, event objects or not. Additionally,
a special case of a complex event object is a composite event object, which is a
complex event object that is actually made up of a set of other event objects, i.e.,
acting as its parts. A composite event object is always a complex event object,
but every complex event object is not necessarily a composite event object. A
complex event object can be structurally equivalent with a simple event object,
having only the semantic di erence of representing other event objects in the
network.
      </p>
      <p>In the proposed ODP (core classes and properties illustrated in Fig. 1) we
have modelled the EventObject class as a subclass of the dul:InformationObject
(similarly as the ssn:SensorOutput). We have aligned our EventObject class to
the SSN ontology, by expressing that ssn:SensorOutput is equivalent to
SensorOutput in the local namespace, which in turn is a subclass of EventObject.
The reason for introducing a new SensorOutput class is to make the ODP more
self-contained, but still make the alignment explicit (even without importing
the SSN ontology). A SensorOutput is normally a SimpleEventObject,
however, when considering more complex sensors, such as human sensors entering
information into a system, they can be directly entered into the system as
complex event objects. SimpleEventObject may also consist of other kinds of event
objects than a SensorOutput, e.g., simulated event objects produced inside a
system.</p>
      <p>To relate event objects to each other, we introduce a set of object properties
(hasSubEventObject and hasDirectSubEventObject, and their inverses). The
object properties are modelled in a way that allows us to keep both a hierarchical
sub-event object structure through a non-transitive property
(hasDirectSubEvent5http://west.uni-koblenz.de/koblenz/fb4/AGStaab/Research/ontologies/events/model.owl
6http://www.loa-cnr.it/ontologies/DUL.owl
7http://spit re-project.eu/ontology/ns/</p>
      <p>Object) but (using a reasoner) also allows for directly retrieving all sub-event
objects through its transitive superproperty (hasSubEventObject). The
properties are aligned to DUL, i.e., sub-properties of dul:hasConstituent (and
dul:isConstituentOf). These properties allow us to express event abstraction
on the side of the event objects, while a similar structure exists on the side of
actual events in DUL, i.e., directly for the dul:Event class using
dul:hasConstituent and dul:isConstituentOf. These two parallel structures do not
necessarily need to mirror each other, which is actually the main motivation for
separating them. For instance, consider a music festival night as an event that
occurs in the real world. Intuitively we may, for instance, describe this event as
a set of concerts by di erent artists that are held in sequence on the same stage,
which could be modelled using Event-F, the dul:Event class and its associated
properties for mereological breakdown. However, a system representation of this
event, i.e., the event objects, may very well display a completely di erent
content and structural breakdown. For instance, we may use sound level sensors to
detect that there is some activity on the stage, and make readings every minute,
then the music festival night is actually represented by a \loud period" event
object in the system, which consists of sub-events that are the individual sound
level readings, together with some mechanism detecting that what is heard is
actually music. The latter breakdown would then use the properties of the Event
Processing ODP, to express the breakdown of the event objects from the system
viewpoint. In addition, we also model event objects that are partitioned into
components, i.e., whose parts are other event objects. This is modelled in a
similar manner, i.e., again with a property structure parallel to Event-F, but this
time exploiting the dul:hasPart and dul:hasComponent properties.</p>
      <p>
        Since the notion of event object header and event object body is a
prominent part of some systems (for a more detailed discussion on the aspect, see
[
        <xref ref-type="bibr" rid="ref5">5</xref>
        ]), it is important to include in our model, but at the same time
accommodate systems where this is not present. We include the concepts
EventObjectBody and EventObjectHeader in the ODP (as dul:InformationObject
subclasses), as well as object properties for relating an EventObject to its header
and body, and further expressing the content of the header and body. For
instance, if a header is used, the relation to other event objects (componency
or constituency) can be expressed through a property of the header instead
(refersToEventObjectComponent and refersToEventObjectConstituent
respectively). By exploiting OWL property chains, this is then equivalent to
directly stating the relation for an individual of EventObject.
      </p>
      <p>The actual information content of an EventObject, whether organized into a
header and body or not, can then be expressed through properties, such as
hasEventObjectAttributeValue (subproperty of dul:hasRegion) and
hasEventObjectAttributeDataValue (subproperty of dul:hasDataValue), or through
arbitrary properties that the application case requires. To model di erent
timestamps of the EventObject, there are a set of subproperties of
hasEventObjectAttributeDataValue (in turn subproperty of dul:hasDataValue), grouped
under a property called hasEventObjectTime, i.e., the following four OWL
datatype properties: hasEventObjectSamplingTime,
hasEventObjectApplicationTime, hasEventObjectSystemTime, and hasEventObjectExpirationTime,
corresponding to the time points when the event object was sampled (e.g.,
recorded by a sensor), entered the data stream, arrived in the event processing
system via the stream, and any known end time for the event objects validity,
respectively. The alignment to Event-F is constructed through a restriction on
the EventObject class, expressing that any EventObject describes some \real"
event (dul:Event), which then according to the Event-F model has to be a
documented event, i.e., a dul:Event involved in some
eventf:EventDocumentationSituation.
3</p>
    </sec>
    <sec id="sec-2">
      <title>Example of Usage</title>
      <p>As an example usage of the ODP, we may have sensors measuring the water
level and ow in di erent parts of a network of rivers and lakes. That
information combined with a weather forecast for rain could be used to derive a ood
warning, which would be a complex event object. An RDF le containing an
instantiation of the ODP, realizing this small example scenario can be found in the
ODP portal8. In this example, a ood warning is an instance of EventObject,
which is a composite event object, encapsulating another EventObject, which is
a water alert. The water alert, in turn is also composite, encapsulating a water
level measurement. The ood warning also refers to a weather event object, but
the weather event object is merely referenced (rather than encapsulated). If the
ood warning did not encapsulate the triggering event objects, it would still be
a complex event object but not a composite event object. Each of the
EventObject instances have some data attached, and most of them use the header/body
8http://www.ontologydesignpatterns.org/cp/examples/eventprocessing/eventexample.owl
structure described previously. In addition, the example shows how external
vocabularies can easily be used for expressing EventObject instances and data.
For example, the weather data uses the meteo vocabulary9, and to illustrate
the alignment to the SSN ontology the water level measurement EventObject
is modelled entirely using classes and properties from the SSN ontology.
4</p>
    </sec>
    <sec id="sec-3">
      <title>Conclusions</title>
      <p>
        We propose a novel Event Processing ODP, i.e., a vocabulary for representing
and reasoning over complex and composite event objects, which is needed for
further progress in the area of RDF stream processing. The model is aligned
to important standards, such as the SSN ontology, and compatible with other
event models, such as Event-F, and it is particularly designed so as to be exible
enough to accommodate di erent event object structures, yet generic enough to
allow for expressing generic queries for management of the event objects. For a
complete discussion of bene ts and relations to the underlying requirements, see
the accompanying full paper [
        <xref ref-type="bibr" rid="ref5">5</xref>
        ].
      </p>
    </sec>
    <sec id="sec-4">
      <title>Acknowledgments</title>
      <p>This work was partially supported by European Commission through the SSRA
(Smart Space Research and Applications) activity of EIT ICT Labs10, and
CENIIT at Linkoping University through the grant 12.10.</p>
    </sec>
  </body>
  <back>
    <ref-list>
      <ref id="ref1">
        <mixed-citation>
          1.
          <string-name>
            <surname>Corcho</surname>
            ,
            <given-names>O.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Garc</surname>
            a-Castro,
            <given-names>R.</given-names>
          </string-name>
          :
          <article-title>Five challenges for the semantic sensor web</article-title>
          .
          <source>Semantic Web</source>
          <volume>1</volume>
          (
          <issue>1</issue>
          ),
          <volume>121</volume>
          {
          <fpage>125</fpage>
          (
          <year>2010</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref2">
        <mixed-citation>
          2.
          <string-name>
            <surname>Etzion</surname>
            ,
            <given-names>O.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Niblett</surname>
            ,
            <given-names>P.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Luckham</surname>
            ,
            <given-names>D.</given-names>
          </string-name>
          : Event Processing in Action.
          <source>Manning Publications (Jul</source>
          <year>2010</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref3">
        <mixed-citation>
          3.
          <string-name>
            <surname>Luckham</surname>
            ,
            <given-names>D.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Schulte</surname>
          </string-name>
          , R.:
          <source>Event Processing Glossary Version 2.0</source>
          (
          <issue>2011</issue>
          ), http:// www.complexevents.com/
          <year>2011</year>
          /08/23/event-processing
          <string-name>
            <surname>-</surname>
          </string-name>
          glossary-version-2-0/
        </mixed-citation>
      </ref>
      <ref id="ref4">
        <mixed-citation>
          4.
          <string-name>
            <surname>Rinne</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Abdullah</surname>
            ,
            <given-names>H.</given-names>
          </string-name>
          , Torma,
          <string-name>
            <given-names>S.</given-names>
            ,
            <surname>Nuutila</surname>
          </string-name>
          , E.:
          <article-title>Processing Heterogeneous RDF Events with Standing SPARQL Update Rules</article-title>
          . In: Meersman,
          <string-name>
            <given-names>R.</given-names>
            ,
            <surname>Dillon</surname>
          </string-name>
          , T. (eds.)
          <article-title>OTM 2012 Conferences, Part II</article-title>
          . pp.
          <volume>793</volume>
          {
          <fpage>802</fpage>
          . Springer-Verlag (
          <year>2012</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref5">
        <mixed-citation>
          5.
          <string-name>
            <surname>Rinne</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Blomqvist</surname>
            ,
            <given-names>E.</given-names>
          </string-name>
          , Keskisarkka,
          <string-name>
            <given-names>R.</given-names>
            ,
            <surname>Nuutila</surname>
          </string-name>
          , E.:
          <article-title>Event Processing in RDF</article-title>
          .
          <source>In: Proceedings of WOP2013 - Research paper track. CEUR Workshop Proceedings</source>
          , CEUR-WS.org (
          <year>2013</year>
          )
        </mixed-citation>
      </ref>
    </ref-list>
  </back>
</article>