=Paper= {{Paper |id=None |storemode=property |title=Resource Description Graph Views for Configuring Linked Data Visualizations |pdfUrl=https://ceur-ws.org/Vol-1026/paper7.pdf |volume=Vol-1026 |dblpUrl=https://dblp.org/rec/conf/i-semantics/StegerKS13 }} ==Resource Description Graph Views for Configuring Linked Data Visualizations== https://ceur-ws.org/Vol-1026/paper7.pdf
           Resource Description Graph Views for
           Configuring Linked Data Visualizations

               Bettina Steger1 , Thomas Kurz2 , and Sebastian Schaffert2
    1
        Fachhochschule Salzburg, Campus Urstein Süd 1, 5412 Puch/Salzburg, Austria
                         bsteger.mmt-m2011@fh-salzburg.ac.at
          2
            Salzburg Research, Jakob-Haringer-Straße 5/II, 5020 Salzburg, Austria
                       firstname.lastname@salzburgresearch.at



          Abstract. 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 visual-
          ization 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 technolo-
          gies. This paper describes an approach to visualize data ’ready-to-go’ by
          configuration that enables Web developers and designers to build use-
          ful 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.

          Keywords: Linked Data, visualization, client-side, json-ld, data-binding


1       Introduction

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 [2], the aim of these cloud interfaces is to
give ’things’, in the broadest sense, a central role and treat them as first-class citi-
zens 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 differ-
ent 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 representa-
tion 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
3
    https://bitbucket.org/visualod/visualod.bitbucket.org




                                             30
Resource Description Graph Views for Configuring Linked Data Visualizations

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. visu-
aLOD 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.
    In this paper we will refer to two different types of Web developers: Seman-
tic 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 visualiza-
tions. The approach presented in this paper, however, also enables non-semantic-
experts to work with Linked Open Data.


2     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 star-
ring actors. Information about the actors, e.g. their birth places (geonames), can
be explored by following links to other datasets. To provide a flexible visualiza-
tion tool, we elaborated simple configuration and abstraction of complex data
structures as basic requirements.




Fig. 1. Movie template is displayed because of resource’s type. In addition, starring
actors are fetched. Clicking on an actor’s image changes the view to the right actor
template. An actor’s resource matches 3 different views: ’actor’, ’person’ and ’default’.
4
    http://angularjs.org
5
    http://visualod.bitbucket.org




                                         31
Resource Description Graph Views for Configuring Linked Data Visualizations


                                              visuaLOD
       Browser
                             AngularJS + JSON-LD                Views + Templates



                                     HTTP / Linked Data Principles




                                           Linked Data Cloud




    Fig. 2. Architecture: visuaLOD runs on the client, no need for server installation.




2.1     Resource Description Graph
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).
    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.

2.2     Work flow
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      Evaluation
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
6
    http://json-ld.org/




                                            32
Resource Description Graph Views for Configuring Linked Data Visualizations


                                                                                 nestResource()
                                                                               uses fetch with context
                                                                                 to extend JS model
                  getResource(URI)
                    gets LD from URI                                   true
                                                                                  renderViews()
              => resource data => JS model   JS model     check                   HTML-Template
    Start                                     + views   constraints           model / view data-binding
                     loadViews()
                    gets JSON con'g                                   false
                                                                                                          last          Stop
                                                                                        false                    true
                                                                                                         view?




                                                  Fig. 3. Work flow



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           Related Work

Fresnel8 is a browser-independent presentation vocabulary for RDF. The main
concept consists of two parts: Lenses and Formats. Lenses specify which prop-
erties of RDF resources are shown while formats indicate how to format content
selected by lenses [4]. Lenses and Formates are defined in RDF, thus it is difficult
to read and write a lens or format for non-experts.
    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.
    LESS [1] 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.
    The KiWi project [3, 5] 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.
    All approaches introduced in the course of this chapter differ from the pre-
sented 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).

7
  http://bitbucket.org/visualod/visualod.bitbucket.org
8
  http://www.w3.org/2005/04/fresnel-info/
9
  http://lodspeakr.org/




                                                        33
Resource Description Graph Views for Configuring Linked Data Visualizations

5      Conclusion and Further Work

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 end-
   users 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.


References
1. S. Auer, R. Doehring, and S. Dietzold. LESS - template-based syndication and
   presentation of linked data. In Proceedings of the 7th international conference on
   The Semantic Web: research and Applications - Volume Part II, ESWC’10, pages
   211–224, Berlin, Heidelberg, 2010. Springer-Verlag.
2. T. Heath. How Will We Interact with the Web of Data? IEEE Internet Computing,
   12(5):88–91, Sept. 2008.
3. T. Kurz, S. Schaffert, T. Bürger, S. Stroka, and R. Sint. KiWi - A Platform for
   building Semantic Social Media Applications. In Proceedings of the ISWC 2010
   Posters and Demonstrations Track, ISWC’10, pages 185–188, 2010.
4. E. Pietriga, C. Bizer, D. Karger, and R. Lee. Fresnel: a browser-independent pre-
   sentation vocabulary for RDF. In Proceedings of the 5th international conference
   on The Semantic Web, ISWC’06, pages 158–171, Berlin, Heidelberg, 2006. Springer-
   Verlag.
5. S. Schaffert, J. Eder, S. Grünwald, T. Kurz, and M. Radulescu. Kiwi - a platform
   for semantic social software (demonstration). In ESWC’09: The Semantic Web: Re-
   search and Applications, Proceedings of the 6th European Semantic Web Conference,
   pages 888–892, Heraklion, Greece, June 2009.




10
     http://www.w3.org/TR/sparql11-update/




                                        34