<!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>Hailing a Taxi on the Web of Needs</article-title>
      </title-group>
      <contrib-group>
        <contrib contrib-type="author">
          <string-name>Florian Kleedorfer</string-name>
          <xref ref-type="aff" rid="aff1">1</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Fabian Suda</string-name>
          <xref ref-type="aff" rid="aff1">1</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Max Stolze</string-name>
          <xref ref-type="aff" rid="aff1">1</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Christian Huemer</string-name>
          <email>huemer@big.tuwien.ac.at</email>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <aff id="aff0">
          <label>0</label>
          <institution>Institute for Software Technology and interactive Systems, Vienna University of Technology</institution>
          ,
          <addr-line>Favoritenstra e 9-11, 1040 Vienna</addr-line>
          ,
          <country country="AT">Austria</country>
        </aff>
        <aff id="aff1">
          <label>1</label>
          <institution>Research Studio Smart Agent Technologies</institution>
          ,
          <addr-line>Thurngasse 8/16, 1090 Vienna</addr-line>
          ,
          <country country="AT">Austria</country>
        </aff>
      </contrib-group>
      <abstract>
        <p>Matchmaking and cooperation are interactions widely available within internet-based platforms. However, to start using such functionality, one must rst become a member of the platform. In an e ort to push matchmaking and cooperation into the protocol stack of the Web, we demonstrate how an existing taxi service is integrated with a decentralized Web based infrastructure, the Web of Needs (WoN), using a chatbot that can be programmed declaratively to enter into certain types of agreements with users. The bot mediates between an existing Web service and users of the RDF-based WoN network.</p>
      </abstract>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>Introduction</title>
      <p>Business as well as private interactions are increasingly mediated by internet
based two-sided or multi-sided platforms. A common trait of all such platforms
is the fact that they o er tools for both sides of a transaction, for example, taxi
drivers and passengers. Their technology requires that users in both roles be
onboarded in a rst step; afterwards, the intention of engaging an interaction is
only published within the bounds of the platform and hence can only be satis ed
within it.</p>
      <p>
        Arguing that another { more open { mode of interaction is possible, we
have developed a set of protocols we call the Web of Needs(WoN) [
        <xref ref-type="bibr" rid="ref2">2</xref>
        ]. Figure 1
gives an overview of its architecture. In order to allow for users of di erent
domains or platforms to come to a mutually understood arrangement about how
to interact with each other, we have developed an agreement protocol on top of
the federated and completetly RDF [
        <xref ref-type="bibr" rid="ref5">5</xref>
        ] based chat protocol[
        <xref ref-type="bibr" rid="ref1">1</xref>
        ] used by WoN users
to communicate [
        <xref ref-type="bibr" rid="ref3">3</xref>
        ]. This protocol allows users to create mutually agreed-upon
RDF graphs as a result of their chat interactions. Moreover, in order to allow
chatbots to create agreements when o ering the services of third-party sytems
in WoN, we have developed an approach for de ning declaratively what sort of
agreement a bot may create using SHACL [
        <xref ref-type="bibr" rid="ref4">4</xref>
        ] and a new approach for combining
two RDF graphs we call blending.
      </p>
      <p>In our applied research, we are aiming for building a WoN-based,
decentralized solution for transportation. To get started, we chose the use case of calling
a taxi because it is a simple case of transportation allowing for low-cost practical
tests.
The demo at hand3 shows the implementation of the agreement protocol in
combination with automated negotiation. The interaction takes place between
us (a human user) and a bot that is connected to the REST interface of a taxi
service. First, we use the owner webapp to post the need for a taxi, stating
pick-up and destination locations (Figure 2a). Subsequently, we are contacted
by the taxi bot (Figure 2b). When announcing its taxi service, the bot sets the
won:NoHintForCounterpart ag in its posting, which causes matchers not to
send a hint to our posting4. Instead, only the bot is noti ed of an opportunity
to interact; it can choose whether to make an o er or not. In our case, the bot
connects with us, we accept the connection, and after the taxi bot has evaluated
the data in the conversation (locations, times, etc.) it makes a proposal to execute
the ride (Figure 2c). Finally, we accept that proposal (Figure 2d), which therefore
becomes an agreement.5
3 See https://matchat.org/
4 Note that our posting has no matches in Figure 2b
5 Readers should note that the taxi bot that was used in this demo may not be running
at all times, and that the outcome of conversations with the bot may vary over time.
(c) The taxi bot makes a proposal after
(a) Posting a search for a taxi, specifying analyzing the conversation data.
start and destination of the ride.
(b) Our posting, searching for a taxi, has
been contacted by the taxi bot. Next to it,
a 'What's Around' posting that matches
anything nearby, demonstrating that it is
a general purpose application not speci
cally made for the taxi use case.
(d) We accept the proposal. The taxi bot
is sending a taxi.</p>
      <p>Fig. 2: Screenshots from the WoN Owner application during the negotiation for
a cab ride.
The purpose of this prototype is an end-to-end demonstration of a simple
transportation use case, so far only showing the initiation of the interaction, for
example, calling a cab. The later stages - communication about the actual arrival
of the car, the arrival of the passenger, completion of the ride and success of
the payment, are planned for future work. Our approach for representing the
complete transaction in the conversation consists of representing the transaction
as a state machine that can be evaluated independently on either side of the
transaction. Our idea is that the initial proposal contains, among other data,
the de nition of the state machine that the transaction will then be represented
with. The de nition of that state machine contains states and de nes how
messages sent by the participants a ect those states.</p>
      <p>In addition to this extension of the protocol, we aim for representing and
testing more complex cases of goods transports, as well as, eventually, cases
from other domains.
4</p>
    </sec>
    <sec id="sec-2">
      <title>Acknowledgements</title>
      <p>This work demonstrates outcomes of the projects OLN - Open Logistics
Networks, funded by the Austrian Federal Ministry for Digital and Economic A airs
in the pogram COIN - Cooperation and Innovation and CoShA - Cooperation
and Sharing Applications, funded by the Austrian Ministry for Transport,
Innovation and Technology in the program Mobilitat der Zukunft.</p>
      <p>However, it is possible to test the agreement functionality with two distinct user
accounts.</p>
    </sec>
  </body>
  <back>
    <ref-list>
      <ref id="ref1">
        <mixed-citation>
          1.
          <string-name>
            <given-names>F.</given-names>
            <surname>Kleedorfer</surname>
          </string-name>
          ,
          <string-name>
            <given-names>C. M.</given-names>
            <surname>Busch</surname>
          </string-name>
          ,
          <string-name>
            <given-names>C.</given-names>
            <surname>Huemer</surname>
          </string-name>
          , and
          <string-name>
            <given-names>C.</given-names>
            <surname>Pichler</surname>
          </string-name>
          .
          <article-title>A linked data based messaging architecture for the web of needs</article-title>
          .
          <source>Enterprise Modelling and Information Systems Architectures</source>
          ,
          <volume>11</volume>
          (
          <issue>3</issue>
          ):1 {
          <fpage>18</fpage>
          ,
          <year>2016</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref2">
        <mixed-citation>
          2.
          <string-name>
            <given-names>F.</given-names>
            <surname>Kleedorfer</surname>
          </string-name>
          ,
          <string-name>
            <given-names>C. M.</given-names>
            <surname>Busch</surname>
          </string-name>
          ,
          <string-name>
            <given-names>C.</given-names>
            <surname>Pichler</surname>
          </string-name>
          , and
          <string-name>
            <given-names>C.</given-names>
            <surname>Huemer</surname>
          </string-name>
          .
          <article-title>The case for the web of needs</article-title>
          .
          <source>In Business Informatics (CBI)</source>
          ,
          <source>2014 IEEE 16th Conference on</source>
          , volume
          <volume>1</volume>
          , pages
          <fpage>94</fpage>
          {
          <fpage>101</fpage>
          . IEEE,
          <year>2014</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref3">
        <mixed-citation>
          3.
          <string-name>
            <given-names>F.</given-names>
            <surname>Kleedorfer</surname>
          </string-name>
          ,
          <string-name>
            <given-names>H.</given-names>
            <surname>Friedrich</surname>
          </string-name>
          , and
          <string-name>
            <given-names>C.</given-names>
            <surname>Huemer</surname>
          </string-name>
          .
          <article-title>Agreements in a de-centralized linked data based messaging system</article-title>
          .
          <source>In Proceedings of the Workshop on Decentralizing the Semantic Web (DeSemWeb)</source>
          , Vienna, Austria,
          <year>October 2017</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref4">
        <mixed-citation>
          4.
          <string-name>
            <given-names>H.</given-names>
            <surname>Knublauch</surname>
          </string-name>
          and
          <string-name>
            <given-names>D.</given-names>
            <surname>Kontokostas</surname>
          </string-name>
          .
          <article-title>Shapes constraint language (shacl</article-title>
          ),
          <fpage>6</fpage>
          <lpage>2017</lpage>
          . [Last accessed on
          <year>2018</year>
          /06/06].
        </mixed-citation>
      </ref>
      <ref id="ref5">
        <mixed-citation>
          5.
          <string-name>
            <given-names>F.</given-names>
            <surname>Manola</surname>
          </string-name>
          ,
          <string-name>
            <given-names>E.</given-names>
            <surname>Miller</surname>
          </string-name>
          , and
          <string-name>
            <given-names>B.</given-names>
            <surname>McBride</surname>
          </string-name>
          .
          <source>Rdf 1.1 primer</source>
          ,
          <year>2014</year>
          . [Last accessed on
          <year>2017</year>
          /07/26].
        </mixed-citation>
      </ref>
    </ref-list>
  </back>
</article>