<!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>HyperSD: a Semantic Desktop as a Semantic Web Application</article-title>
      </title-group>
      <contrib-group>
        <contrib contrib-type="author">
          <string-name>Daniel Schwabe</string-name>
          <email>dani@inf.puc-rio.br</email>
          <email>dschwabe@inf.puc-rio.br</email>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Daniela Brauner</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Demetrius A. Nunes</string-name>
          <email>demetrius@interface-ti.com.br</email>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Guilherme Mamede</string-name>
          <email>mamede@inf.puc-rio.br</email>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <aff id="aff0">
          <label>0</label>
          <institution>Departamento de Informática</institution>
          ,
          <addr-line>PUC-Rio</addr-line>
          ,
          <country country="BR">Brazil</country>
        </aff>
      </contrib-group>
      <abstract>
        <p>In this paper, we show how one can leverage a Semantic Web application development environment to define an application that is a Semantic Desktop browser called HyperSD. In addition, special wrappers have been defined to allow importing regular desktop objects, such as files, person records, calendar entries, etc… into the semantic desktop accessed through HyperSD.</p>
      </abstract>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>Introduction</title>
      <p>With the emergence of the Semantic Web, it has been quickly recognized the
desirability of applying its technologies to enhance the everyday desktop on which users
work everyday. By exploiting the semantically richer (meta)data available for relevant
items, it should be possible to provide more useful ways to access and process
information stored in desktop items, such as files containing data, music, video, images;
information about persons; information about events; etc…There have been several
proposals on how to achieve this, notably Gnowsis (http://www.gnowsis.org) and
Haystack (http://haystack.lcs.mit.edu/), among others.</p>
      <p>The availability of metadata describing desktop items, especially using Semantic
Web technologies, immediately suggests that it should be possible to access it as a
hypermedia application, allowing the user to navigate from one item to its
semantically related items. This paper shows how we have taken a development environment
for hypermedia applications in the Semantic Web, called HyperDE, and generated a
Semantic Desktop browser called HyperSD, which allows accessing desktop
information in hypermedia fashion.</p>
      <p>A brief summary of SHDM and HyperDE</p>
      <p>
        The HyperDE environment allows the implementation of web applications
designed using the SHDM method [
        <xref ref-type="bibr" rid="ref1 ref2">1,2</xref>
        ]. SHDM is a model-driven approach to design
web applications using five different steps: Requirements Gathering, Conceptual
Design, Navigational Design, Abstract Interface Design and Implementation. Each phase
focuses on a particular aspect and produces artifacts detailing the application to be run
on the web.
      </p>
      <p>
        In SHDM we define a Semantic Web application as a navigational view over some
ontology which describes the problem domain (see [
        <xref ref-type="bibr" rid="ref4">4</xref>
        ] for a more extensive
discussion). We profit from being able to represent both data itself and its schema
(metadata) using the same formalism, since the fact that the schema can be manipulated just
like any other kind of data brings greater expressiveness and conciseness to the
specifications.
      </p>
      <p>The HyperDE (http://server2.tecweb.inf.puc-rio.br:8000/projects/hyperde/trac.cgi/)
environment is based on the MVC framework, and allows the designer to input
SHDM navigational models (the “model” in the MVC framework), and interface
definitions (the “view” in the MCV framework), and generates complete applications
adherent to the specification. It also provides an interface to create and edit instance
data, although, strictly speaking, this should actually be part of the generated
application. In HyperDE. SHDM meta-models, user defined navigation models, as well as
the application instance data, are all stored as RDF data.</p>
      <p>The Semantic Desktop as a Hypermedia application
A Semantic Desktop can be seen as a meta-data enriched set of information items
accessible through the user’s desktop. Typical item are of different types, such as
various file contents, such as text, mp3s, videos, programs, etc….; information about
persons; and information about events. Fig. 1 shows a simple schema for these
information types. It should be noted that the properties and some relations in this
schema are the same as in popular existing ontologies for existing ontologies for
similar concepts, e.g., FOAF for describing persons and relations, RDFCal for events,
etc…
&lt;related to&gt;</p>
      <p>Creates</p>
      <sec id="sec-1-1">
        <title>SD_Person</title>
        <p>name
firstname
surname
mbox
seeAlso</p>
      </sec>
      <sec id="sec-1-2">
        <title>SD_Event</title>
        <p>subject
summary
status
location
Participates dtstart
In dtend
duration
organization</p>
      </sec>
      <sec id="sec-1-3">
        <title>SD_Artifact</title>
        <p>Uses</p>
      </sec>
      <sec id="sec-1-4">
        <title>SD_Document</title>
        <p>subject
keywords
pages
word count
author</p>
        <p>Appears In
SD_File
title
publisher
category
size
creationDate
location</p>
      </sec>
      <sec id="sec-1-5">
        <title>SD_Image</title>
        <p>format
resolution
author</p>
        <p>SD_Music
artist
album
total Tracks
total CDs
rating
release Year</p>
        <p>Fig. 1. A simple vocabulary for HyperSD.</p>
        <p>Given the set of information items, a Semantic Desktop browser can be seen as an
application that allows navigation among these items, as well as the ability to process
them.</p>
        <p>Following SHDM, we have defined a simple navigation schema for such an
application, which was implemented in HyperDE; the resulting application is called
HyperSD.</p>
        <p>Main menu</p>
        <p>File Types</p>
        <p>Files
Person
Event</p>
        <p>Files
bybTypTeype
by Person
Person</p>
        <p>Alphabetical
by &lt;&lt;relation&gt;&gt;</p>
        <p>by Event
Event</p>
        <p>Chronological</p>
        <p>By Person</p>
        <p>In Fig. 2, we show an initial navigation context diagram for HyperSD. In this
diagram, dashed boxes are indices, and solid boxes are contexts (sets of items whose
type is shown in the grey area). From the main menu, one can access a hierarchical
index of files by file type, an alphabetical index of persons, and a chronological index
of events. From a file, it is possible to navigate to the persons related to it. From a
person, it is possible to navigate to the related persons according to each possible type of
relation defined, to the files and to the events associated with that person. From an
event, it is possible to navigate to the persons associated with this event.</p>
        <p>It is important to stress that we do not claim that this is the only possible, relevant
or meaningful way to navigate among items, but rather the fact that, having an
environment such as HyperDE, it is very straightforward to implement whatever
navigation topology is desired, and evolve it over time.</p>
        <p>The Semantic Desktop implementation in HyperDE
Given the models described earlier, we implemented them in HyperDE, running as a
web application local to the user machine. Fig. 3 shows the details of an Event in the
context “Events in Chronological Order”. Clicking on a attendee of the event, one
navigates to the person’s details, shown in Fig. 4.</p>
        <p>The HyperDE environment provides contextual navigation automatically,
according to the model specification. In this case, there is an index to all elements, shown in
the left column of the screen, and sequential navigation in the Persons by Event,
which generates “&gt;&gt;” anchor, next to the name of the next item in the context. Notice,
in the example, that it is also possible to import a FOAF description to instantiate a
new SD_Person. Notice also that there is an index of Relation Types (e.g., FriendOf,
ApprenticeTo, etc…) associated with a person; this index is generated by a
metaquery (i.e., a query to the model definition) extracting all defined relation types
between SD_Person and itself.</p>
        <p>HyperDE has a full fledged view definition mechanism allowing the customization
of presentation templates, although it also possible to use a default presentation
template that is built into the environment itself. In addition to defining views, the
HyperDE enviroment also has facilities for the definition of all SHDM primitives
(navigational classes, indexes, links, contexts). Fig. 5 shows an example of the interface
for defining a navigation context, “Persons by Event”, which retrieves all triples of
type “SD_Person” that “Attends” an event which is passed as a parameter (the “?” in
the query). Notice that we have extended RQL with an “Order by” clause.</p>
      </sec>
    </sec>
    <sec id="sec-2">
      <title>Conclusions</title>
      <p>We have defined and implemented HyperSD as a Semantic Web application that
manipulates information items typical in a desktop, using the HyperDE environment.
Current and future work being pursued includes
• Developing a richer set of wrappers;
• Providing a more sophisticated navigation structure, include also the
possibility of allowing the user to customize it;
• Providing a more amicable interface look and feel;
• HyperSD currently runs as a local web application. We are investigating
ways of integrating distributed HyperSD, running in individual machines
Acknowledgements. Daniel Schwabe is partially supported by a grant from CNPq, Brazil.</p>
    </sec>
  </body>
  <back>
    <ref-list>
      <ref id="ref1">
        <mixed-citation>
          1.
          <string-name>
            <surname>Lima</surname>
            ,
            <given-names>F.</given-names>
          </string-name>
          ;
          <string-name>
            <surname>Schwabe</surname>
            ,
            <given-names>D.</given-names>
          </string-name>
          :
          <article-title>Modeling Applications for the Semantic Web</article-title>
          .
          <source>Proceedings of the 3rd Int. Conference on Web Engineering (ICWE</source>
          <year>2003</year>
          ), Oviedo, Spain,
          <year>July 2003</year>
          .
          <source>LNCS 2722</source>
          , Springer Verlag, Heidelberg,
          <year>2003</year>
          . pp
          <fpage>417</fpage>
          -
          <lpage>426</lpage>
          . ISBN 3-540-40522-4.
        </mixed-citation>
      </ref>
      <ref id="ref2">
        <mixed-citation>
          2.
          <string-name>
            <surname>Lima</surname>
            ,
            <given-names>F.</given-names>
          </string-name>
          ;
          <string-name>
            <surname>Schwabe</surname>
            ,
            <given-names>D.</given-names>
          </string-name>
          :
          <article-title>Application Modeling for the Semantic Web</article-title>
          .
          <source>Proceedings of LAWeb</source>
          <year>2003</year>
          , Santiago, Chile, Nov.
          <year>2003</year>
          . IEEE Press, pp.
          <fpage>93</fpage>
          -
          <lpage>102</lpage>
          , ISBN (available at http://www.la-web.org).
        </mixed-citation>
      </ref>
      <ref id="ref3">
        <mixed-citation>
          3.
          <string-name>
            <surname>Nunes</surname>
          </string-name>
          , D.;
          <article-title>“HyperDE - a Framework and an Ontology-driven Development Environment for Hypermedia Applications”</article-title>
          ,
          <source>MSc Thesis</source>
          , Dept. of Informatics, PUC-Rio, Brazil, Feb.
          <year>2005</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref4">
        <mixed-citation>
          4.
          <string-name>
            <surname>Rossi</surname>
            ,
            <given-names>G.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Schwabe</surname>
            ,
            <given-names>D.</given-names>
          </string-name>
          and
          <string-name>
            <surname>Lyardet</surname>
            ,
            <given-names>F.</given-names>
          </string-name>
          :
          <article-title>Web Application Models Are More than Conceptual Models</article-title>
          .
          <source>Proceedings of the ER'99</source>
          , Paris, France,
          <year>November 1999</year>
          , Springer,
          <fpage>239</fpage>
          -
          <lpage>252</lpage>
          .
        </mixed-citation>
      </ref>
    </ref-list>
  </back>
</article>