21
Improving Human-Semantic Web Interaction: The Rhizomer Experience Roberto García and Rosa Gil GRIHO - Human Computer Interaction Research Group Universitat de Lleida, Spain

Improving Human–Semantic Web Interaction: The Rhizomer Experience

Embed Size (px)

DESCRIPTION

Rhizomer is a generic semantic metadata browser and editor. It is based on “classic” HTML paradigms (table, form, etc.) in order to provide an easy and accessible user experience. For end-users, it looks like the web pages they are used to deal with. However, the semantics that lay behind are used to improve the user experience through an AJAX-enhanced web interface. The user interface is fed by a metadata storage abstraction layer, which offers a SPARQL endpoint and implements the DESCRIBE SPARQL primitive in order to improve the usability of the resulting metadata fragments. The metadata component is combined with a wiki engine that helps managing the content intended for human consumption. Altogether, both components build a simple yet powerful platform for Semantic Web portals.

Citation preview

Page 1: Improving Human–Semantic Web Interaction: The Rhizomer Experience

Improving Human-Semantic Web Interaction:The Rhizomer Experience

Roberto García and Rosa Gil

GRIHO - Human Computer Interaction Research Group

Universitat de Lleida, Spain

Page 2: Improving Human–Semantic Web Interaction: The Rhizomer Experience

Improving Human-Semantic Web Interaction: The Rhizomer Experience — 2/21

Table of Contents

• Introduction

• Proposal

• Architecture

• Wiki Engine

• Rhizomer

• Guided tour

• Conclusions

• Future Work

Page 3: Improving Human–Semantic Web Interaction: The Rhizomer Experience

Improving Human-Semantic Web Interaction: The Rhizomer Experience — 3/21

Introduction

• Scenario: semantic portal– Framework for community knowledge sharing– Non-expert users

• User interaction not just consumption, also production

• Follow Semantic Wiki style:– Facilitate production– Keep information organised

Page 4: Improving Human–Semantic Web Interaction: The Rhizomer Experience

Improving Human-Semantic Web Interaction: The Rhizomer Experience — 4/21

Introduction

• However, most Semantic Wikis…– Mix human and machine-oriented content– Quite unusable notation for HTML content and/or

semantic metadata[[Category:ResearchProject]]

[[label:=Rhizomer]]

[[homepage:=rhizomik.net/rhizomer]]

– Require user aware of available classes, props,…– Difficult reuse of external data and ontologies

– More usable approaches: PlatypusWiki, OntoWiki,…

Page 5: Improving Human–Semantic Web Interaction: The Rhizomer Experience

Improving Human-Semantic Web Interaction: The Rhizomer Experience — 5/21

Proposal

• Focus on simplicity and ease of use:– Separate HTML content and semantic metadata– Simple wiki engine– WYSIWYG wiki user interface– Semantic metadata engine– Usable semantic metadata interaction– Common HTML interface, just the web browser

Page 6: Improving Human–Semantic Web Interaction: The Rhizomer Experience

Improving Human-Semantic Web Interaction: The Rhizomer Experience — 6/21

Architecture

• Wiki Engine: manage HTML documents

• Rhizomer: manage semantic metadata, about wiki docs or other resources

linklink

#anchor

link

link

URL

URL

URL

URL

RHIZOMERWIKI ENGINE

Page 7: Improving Human–Semantic Web Interaction: The Rhizomer Experience

Improving Human-Semantic Web Interaction: The Rhizomer Experience — 7/21

Wiki Engine

• Simplicity:– Based on Java Servlets / JSPs / JavaScript– No database required– Store documents as HTML files

• Ease of use:– FCKEditor, http://www.fckeditor.net– WYSIWYG interface, text processor like– Customisable user interface

• E.g.: add custom special chars

Page 8: Improving Human–Semantic Web Interaction: The Rhizomer Experience

Improving Human-Semantic Web Interaction: The Rhizomer Experience — 8/21

Wiki Engine

Page 9: Improving Human–Semantic Web Interaction: The Rhizomer Experience

Improving Human-Semantic Web Interaction: The Rhizomer Experience — 9/21

Rhizomer

• Simplicity:– Abstraction layer on metadata stores

(Sesame, Jena,…).– REST interface– Implementation

• Java Servlets• JSP

MetadataStore

Rhizomer

GE

T

PU

T

PO

ST

DE

L

search new edit delete

Page 10: Improving Human–Semantic Web Interaction: The Rhizomer Experience

Improving Human-Semantic Web Interaction: The Rhizomer Experience — 10/21

Rhizomer

• Ease of use:– Facilitate discovering unknown metadata

• SPARQL DESCRIBE for default queries

– Web browser interface for semantic metadata• Graph browsing mechanism• Enable “self-explanatory” metadata

RDF

<HTML/>

<HTML/> SemFORMS

JavaScript

Page 11: Improving Human–Semantic Web Interaction: The Rhizomer Experience

Improving Human-Semantic Web Interaction: The Rhizomer Experience — 11/21

Guided Tour: query

Page 12: Improving Human–Semantic Web Interaction: The Rhizomer Experience

Improving Human-Semantic Web Interaction: The Rhizomer Experience — 12/21

<form method=“GET” onSumbit=“buildSPARQL”><input type=“text” name=

“http://swrc…org/ontology#carriedOutBy”/><input type=“text” name=

“http://swrc…org/ontology#financedBy”/>…

</form>

Guided Tour: query

Enter TextcarriedOutBy

financedBy

head

isAbout

member

product

projectInfo

Enter Text

Enter Text

Enter Text

Enter Text

Enter Text

Enter Text

Search

+

Search Project

Add property

?query=DESCRIBE ?s WHERE {?s swrc:carriedOutBy ?y0; swrc:financedBy ?y1.FILTER regex(?y0, "…") &&?y1=<http://www….> }

GE

T

SWRC Ontology

FOAF Ontology

DOAP Ontology

swrc:Projectspecific properties

Page 13: Improving Human–Semantic Web Interaction: The Rhizomer Experience

Improving Human-Semantic Web Interaction: The Rhizomer Experience — 13/21

Guided Tour: store

• Rhizomer servlet: GET query

• SPARQL metadata store– Jena, Sesame,…

• DESCRIBE implementation – Concise Bounded Description +

rdfs:labels for all selected resources

• Query output also RDF

Page 14: Improving Human–Semantic Web Interaction: The Rhizomer Experience

Improving Human-Semantic Web Interaction: The Rhizomer Experience — 14/21

Guided Tour: store

• DESCRIBE R2: build CBD(R2) = Fragment 2 U rdfs:labels

Fragment 2

Fragment 1

Fragment 3

Fragment 4

Identified Resource

Anonymous Resource

Literal

label

R2

Page 15: Improving Human–Semantic Web Interaction: The Rhizomer Experience

Improving Human-Semantic Web Interaction: The Rhizomer Experience — 15/21

Guided Tour: response

• Show results:

– Visualisation and interaction:• XSLT:

– RDF to HTML

– RDF to HTML FORM

– Other options: Fresnel Lenses, RDF Path,…

– Use RDF labels for usability, xml:lang for multilanguage support.

Page 16: Improving Human–Semantic Web Interaction: The Rhizomer Experience

Improving Human-Semantic Web Interaction: The Rhizomer Experience — 16/21

Guided Tour: interaction

<swrc:SoftwareProjectrdf:about="http://rhizomik.net/rhizomer">

<rdfs:label>Rhizomer</rdfs:label><swrc:homepage rdf:resource=

"http://rhizomik.net/content/rhizomer"/><rdf:type rdf:resource=“&swrc;ResearchProject"/>

</swrc:SoftwareProject><rdf:Description rdf:about=“&swrc;homepage”>

<rdfs:label>homepage</rdfs:label></rdf:Description>

view, RDF2HTML XSLT

view, RDF2HTML XSLT

Page 17: Improving Human–Semantic Web Interaction: The Rhizomer Experience

Improving Human-Semantic Web Interaction: The Rhizomer Experience — 17/21

swrc:SoftwareProjecttype

type

homepage

label Rhizomer

http://rhizomik.net/rhizomer

swrc:ResearchProject

Change/Add

+

Add property

RE

ST

PU

T

RE

ST

PO

ST

RE

ST

DE

LE

TE

http://rhizomik.net/rhizomer

edit or new

edit new del

Guided Tour: interaction

Page 18: Improving Human–Semantic Web Interaction: The Rhizomer Experience

Improving Human-Semantic Web Interaction: The Rhizomer Experience — 18/21

Guided Tour: interaction

• Submit semantic form:

<form method=“PUT/POST” onSumbit=“buildMetadata”><input type=“text” name=“http://...w3.org/.../rdf-syntax-ns#ID”

value=“http://rhizomik.net/rhizomer”/><input type=“text” name=“http://...w3.org/.../rdf-syntax-ns#type”

value=“http://swrc…org/ontology#SoftwareProject”/><input type=“text” name=“http://...w3.org/.../rdf-schema#label”/

value=“Rhizomer”/>…

</form>

– PUT: add metadata fragment– POST: delete metadata fragment for ID

and add new metadata

<Subject,…

Predicate,Object>

Predicate,Object>

Page 19: Improving Human–Semantic Web Interaction: The Rhizomer Experience

Improving Human-Semantic Web Interaction: The Rhizomer Experience — 19/21

Conclusions

• Usable framework (preliminary user tests)

• Simple and flexible– Example: Semantic Media Portal

Page 20: Improving Human–Semantic Web Interaction: The Rhizomer Experience

Improving Human-Semantic Web Interaction: The Rhizomer Experience — 20/21

Future Work

• AJAX to improve user interaction– Assisted metadata creation:

available properties, property values,…

• Specialised visualisation and interaction services– Map for geo-tagged resources, Timeline or Calendar

for events,…

• Deeper user testing

Page 21: Improving Human–Semantic Web Interaction: The Rhizomer Experience

Thank you for your attention

More at: http://rhizomik.net

[email protected]@diei.udl.es