<!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>Resource Description Graph Views for Configuring Linked Data Visualizations</article-title>
      </title-group>
      <contrib-group>
        <contrib contrib-type="author">
          <string-name>Bettina Steger</string-name>
          <email>bsteger.mmt-m2011@fh-salzburg.ac.at</email>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Thomas Kurz</string-name>
          <xref ref-type="aff" rid="aff1">1</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Sebastian Schaffert</string-name>
          <xref ref-type="aff" rid="aff1">1</xref>
        </contrib>
        <aff id="aff0">
          <label>0</label>
          <institution>Fachhochschule Salzburg</institution>
          ,
          <addr-line>Campus Urstein Su ̈d 1, 5412 Puch/Salzburg</addr-line>
          ,
          <country country="AT">Austria</country>
        </aff>
        <aff id="aff1">
          <label>1</label>
          <institution>Salzburg Research</institution>
          ,
          <addr-line>Jakob-Haringer-Straße 5/II, 5020 Salzburg</addr-line>
          ,
          <country country="AT">Austria</country>
        </aff>
      </contrib-group>
      <fpage>30</fpage>
      <lpage>34</lpage>
      <abstract>
        <p>The Linked Data movement with the aims of publishing and interconnecting machine readable data has originated in the last decade. Although the set of (open) data sources is rapidly growing, the visualization of information in this 'Web of Data' is still at a very early stage, which is primary due to the strong learning curve of semantic technologies. This paper describes an approach to visualize data 'ready-to-go' by configuration that enables Web developers and designers to build useful applications on top of the 'Web of Data'. We provide a visualization tool as a JavaScript Library, which makes it simple to aggregate Linked Data and design templates. The tool provides a way to accomplish this purely on the client using existing Web technologies, like JavaScript MVC Frameworks with data binding and JSON-LD. Based on a usability test, an evaluation is carried out by potential users, such as Web developers and semantic Web experts.</p>
      </abstract>
      <kwd-group>
        <kwd>Linked Data</kwd>
        <kwd>visualization</kwd>
        <kwd>client-side</kwd>
        <kwd>json-ld</kwd>
        <kwd>data-binding</kwd>
      </kwd-group>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>-</title>
      <p>
        After efficiently encouraging the publication and linking of open datasets in a
standardized way, the Linked Data (LD) research community is now facing the
problem of creating meaningful applications on top of the Linked Open Data
(LOD) Cloud. As Heath discussed in [
        <xref ref-type="bibr" rid="ref2">2</xref>
        ], the aim of these cloud interfaces is to
give ’things’, in the broadest sense, a central role and treat them as first-class
citizens in the Web. The graph structure of the LOD Cloud, one of the big potentials
regarding dynamics and distribution, makes this task particularly challenging.
In many cases, complex graphs (that include various resources spread on
different datasets and using several schemas and ontologies) are required in order to
create a meaningful picture of a ’thing’. The gap between the understanding of
the complex structures and the creation of human understandable
representation makes the creation of LD User Interfaces (UI) even more difficult. In our
demo, we present visuaLOD 3, a browser-based library that allows to split the
work flow of the creation of LD applications in a Semantic Web (SW) and a UI
part. This enables SW experts and Web designers to work closely together.
visuaLOD thereby turns complex graph structures into configurable object models,
using well-known technologies such as JavaScript (JS) and JSON. The interfaces
themselves are built employing Google’s AngularJS Framework4 to accomplish
data binding to the view. With visuaLOD we try to reach a linear dependency
between comfort in usage and application complexity.
      </p>
      <p>In this paper we will refer to two different types of Web developers:
Semantic Web experts are developers having had experience with SW and advanced
technologies like RDF or SPARQL. In contrast, non-expert developers do not
have any relation to SW, but do know how to build Web applications with e.g.
PHP, Java, JavaScript. There are already different ways to create LD
visualizations. The approach presented in this paper, however, also enables
non-semanticexperts to work with Linked Open Data.
2</p>
      <p>visuaLOD - a Linked Data View Builder
Different resources need different UIs, e.g. a person could be displayed with a
profile page, whereas a place should be displayed with a map. Depending on
type, properties and source, presentation and actions may differ. In our demo5,
we present a simple movie mashup application visualizing movie details and
starring actors. Information about the actors, e.g. their birth places (geonames), can
be explored by following links to other datasets. To provide a flexible
visualization tool, we elaborated simple configuration and abstraction of complex data
structures as basic requirements.
Browser</p>
      <p>AngularJS + JSON-LD</p>
      <p>Views + Templates
visuaLOD
HTTP / Linked Data Principles</p>
      <p>Linked Data Cloud
Following the nature of Linked Data, the entry point of visuaLOD applications
is a single LD resource. Taking this as a starting point, we follow dedicated
links to fetch the part of the graph necessary for the information representation.
We call the graph of resources and relations, needed to sufficiently visualize a
’thing’ a ’Resource Description Graph’ (RDG). RDGs are defined in so-called
RDG views that include constraints (if a RDG is used for a specific resource),
data mapping (how a graph is represented on client side) and a template (how
a RDG is displayed).</p>
      <p>The data mapping is managed with a JSON-LD Context. JSON-LD6 is a
lightweight LD serialization format based on JSON. Any RDF representation
of a LD resource can be transferred into JSON-LD and vice versa. All defined
properties in this context can be used in the template.
The process, described in Figure 3, retrieves RDF data for the starting resource
and maps it to the AngularJS model. It applies RDG views by validating their
constraint part against the RDF data, fetches the additional resources and nests
them into the model object. In AngularJS, the view is a projection of the model
through the HTML template, so the templates are rendered in parallel.
3</p>
    </sec>
    <sec id="sec-2">
      <title>Evaluation</title>
      <sec id="sec-2-1">
        <title>6 http://json-ld.org/</title>
        <p>A usability test was completed by six potential users: one SW expert and five
Web developers with no prior knowledge of SW. Every user understood the given
assignment and purpose of visuaLOD. The tool provides simple usage, but when
Start
getResource(URI)</p>
        <p>gets LD from URI
=&gt; resource data =&gt; JS model JS model</p>
        <p>+ views
loadViews()
gets JSON con' g</p>
        <p>check
constraints
true
false
nestResource()
uses fetch with context
to extend JS model
renderViews()</p>
        <p>HTML-Template
model / view data-binding
false
last
view?
true</p>
        <p>Stop
it comes to defining the JSON-LD Context the five non-semantic-Web-experts
had difficulties. Feedback received from the SW expert suggests an easier usage
to define the context. For example, visuaLOD could determine automatically if a
property is a URI or a literal. The README7 could be extended by screenshots
and better examples on how to use visuaLOD.
4</p>
      </sec>
    </sec>
    <sec id="sec-3">
      <title>Related Work</title>
      <p>
        Fresnel8 is a browser-independent presentation vocabulary for RDF. The main
concept consists of two parts: Lenses and Formats. Lenses specify which
properties of RDF resources are shown while formats indicate how to format content
selected by lenses [
        <xref ref-type="bibr" rid="ref4">4</xref>
        ]. Lenses and Formates are defined in RDF, thus it is difficult
to read and write a lens or format for non-experts.
      </p>
      <p>LODSPeaKr9 is a framework to create LD applications. It recommends to
discover the data of the defined SPARQL endpoint, which means it is not suitable
for all LD sources.</p>
      <p>
        LESS [
        <xref ref-type="bibr" rid="ref1">1</xref>
        ] represents an approach for the visual presentation of LD resources
and SPARQL query results. The process is based on the server side and uses a
flexible, but proprietary templating language.
      </p>
      <p>
        The KiWi project [
        <xref ref-type="bibr" rid="ref3 ref5">3, 5</xref>
        ] introduces perspective concepts allowing type-dependent
visualization patterns. The weakness of the approach was mainly the strong
coupling between back end and visualization. Nevertheless, the idea of KiWi
perspectives lead to the visualization tool we presented in this demo.
      </p>
      <p>All approaches introduced in the course of this chapter differ from the
presented JS visualization tool: visuaLOD is purely browser-based. A server-side
configuration is not required. Beyond JSON-LD works with any Linked Data
server (e.g. RDF/XML can be converted to this serialization format).</p>
      <sec id="sec-3-1">
        <title>7 http://bitbucket.org/visualod/visualod.bitbucket.org 8 http://www.w3.org/2005/04/fresnel-info/ 9 http://lodspeakr.org/</title>
      </sec>
    </sec>
    <sec id="sec-4">
      <title>Conclusion and Further Work</title>
      <p>This paper has sought to introduce a new approach to visualize Linked Data fully
client-side. With visuaLOD, we presented a LD visualization tool that enables
even non-semantic Web experts to build LD visualizations. To extend visuaLOD
to a generic Linked Data Browser, we will provide a JS bookmarklet. It could be
possible to allow the creation and storage of RDG views in an open accessible
view store. In addition, future work could focus on the following aspects:
– Multi-language support: Detect the browsers language and show the
endusers available texts in their language.
– Update: Not only read, but update LD resources using the advantages of
data-binding and e.g. SPARQL update10.
– View/Template builder: Create a UI for building views. View-Changes could
automatically show how a visualization will look like.</p>
    </sec>
  </body>
  <back>
    <ref-list>
      <ref id="ref1">
        <mixed-citation>
          1.
          <string-name>
            <given-names>S.</given-names>
            <surname>Auer</surname>
          </string-name>
          ,
          <string-name>
            <given-names>R.</given-names>
            <surname>Doehring</surname>
          </string-name>
          , and
          <string-name>
            <given-names>S.</given-names>
            <surname>Dietzold. LESS -</surname>
          </string-name>
          template
          <article-title>-based syndication and presentation of linked data</article-title>
          .
          <source>In Proceedings of the 7th international conference on The Semantic Web: research and Applications</source>
          - Volume
          <string-name>
            <surname>Part</surname>
            <given-names>II</given-names>
          </string-name>
          , ESWC'
          <volume>10</volume>
          , pages
          <fpage>211</fpage>
          -
          <lpage>224</lpage>
          , Berlin, Heidelberg,
          <year>2010</year>
          . Springer-Verlag.
        </mixed-citation>
      </ref>
      <ref id="ref2">
        <mixed-citation>
          2.
          <string-name>
            <given-names>T.</given-names>
            <surname>Heath</surname>
          </string-name>
          .
          <article-title>How Will We Interact with the Web of Data? IEEE Internet Computing</article-title>
          ,
          <volume>12</volume>
          (
          <issue>5</issue>
          ):
          <fpage>88</fpage>
          -
          <lpage>91</lpage>
          , Sept.
          <year>2008</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref3">
        <mixed-citation>
          3.
          <string-name>
            <given-names>T.</given-names>
            <surname>Kurz</surname>
          </string-name>
          ,
          <string-name>
            <given-names>S.</given-names>
            <surname>Schaffert</surname>
          </string-name>
          , T. Bu¨rger, S. Stroka, and
          <string-name>
            <given-names>R.</given-names>
            <surname>Sint</surname>
          </string-name>
          .
          <article-title>KiWi - A Platform for building Semantic Social Media Applications</article-title>
          .
          <source>In Proceedings of the ISWC 2010 Posters and Demonstrations Track</source>
          ,
          <source>ISWC'10</source>
          , pages
          <fpage>185</fpage>
          -
          <lpage>188</lpage>
          ,
          <year>2010</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref4">
        <mixed-citation>
          4.
          <string-name>
            <given-names>E.</given-names>
            <surname>Pietriga</surname>
          </string-name>
          ,
          <string-name>
            <given-names>C.</given-names>
            <surname>Bizer</surname>
          </string-name>
          ,
          <string-name>
            <given-names>D.</given-names>
            <surname>Karger</surname>
          </string-name>
          , and
          <string-name>
            <given-names>R.</given-names>
            <surname>Lee</surname>
          </string-name>
          .
          <article-title>Fresnel: a browser-independent presentation vocabulary for RDF</article-title>
          .
          <source>In Proceedings of the 5th international conference on The Semantic Web, ISWC'06</source>
          , pages
          <fpage>158</fpage>
          -
          <lpage>171</lpage>
          , Berlin, Heidelberg,
          <year>2006</year>
          . SpringerVerlag.
        </mixed-citation>
      </ref>
      <ref id="ref5">
        <mixed-citation>
          5.
          <string-name>
            <given-names>S.</given-names>
            <surname>Schaffert</surname>
          </string-name>
          ,
          <string-name>
            <given-names>J.</given-names>
            <surname>Eder</surname>
          </string-name>
          , S. Gru¨nwald, T. Kurz, and
          <string-name>
            <given-names>M.</given-names>
            <surname>Radulescu</surname>
          </string-name>
          .
          <article-title>Kiwi - a platform for semantic social software (demonstration)</article-title>
          .
          <source>In ESWC'09: The Semantic Web: Research and Applications, Proceedings of the 6th European Semantic Web Conference</source>
          , pages
          <fpage>888</fpage>
          -
          <lpage>892</lpage>
          , Heraklion, Greece,
          <year>June 2009</year>
          .
        </mixed-citation>
      </ref>
    </ref-list>
  </back>
</article>