Building a Semantic IntraWeb with Rhizomer and a Wiki Roberto Garcia and Rosa Gil GRIHO (Human Computer Interaction Research Group) Universitat de Lleida,

Post on 27-Mar-2015

223 Views

Category:

Documents

1 Downloads

Preview:

Click to see full reader

Transcript

Building a Semantic IntraWeb with Rhizomer and a Wiki

Roberto Garcia and Rosa Gil

GRIHO (Human Computer Interaction Research Group)

Universitat de Lleida, Spain

Building a Semantic IntraWeb with Rhizomer and a Wiki — 2/20

Table of Contents

• Introduction

• Proposal

• Architecture

• Wiki Engine

• Rhizomer

• Rhizomer Architecture

• Guided tour

• Conclusions

• Future Work

Building a Semantic IntraWeb with Rhizomer and a Wiki — 3/20

Introduction

• IntraWebs: group information sharing needs

• Web technologies: interaction issues, easy consumption / difficult production

• Wiki technologies: distributed production, difficult to keep information organised

• Semantic Web technologies: ontology for shared conceptualisations

Building a Semantic IntraWeb with Rhizomer and a Wiki — 4/20

Proposal

• Wiki + Semantic Web Mix– Facilitate production– Keep information organisation

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

Building a Semantic IntraWeb with Rhizomer and a Wiki — 5/20

Architecture

• Wiki Engine: manage HTML documents

• Rhizomer: manage semantic metadata about them

linklink

#anchor

link

link

URL

URL

URL

URL

RHIZOMERWIKI ENGINE

Building a Semantic IntraWeb with Rhizomer and a Wiki — 6/20

Wiki Engine

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

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

• E.g.: add custom special chars

Building a Semantic IntraWeb with Rhizomer and a Wiki — 7/20

Wiki Engine

Building a Semantic IntraWeb with Rhizomer and a Wiki — 8/20

Rhizomer

• Simplicity:– Abstraction layer on metadata stores

(Sesame, Jena,…).– Common SOAP interface +

RDF/ACL conversations– Implementation

• Java Servlets• JSP • JavaScript Metadata

Store

Rhizomer

SOAP

AgentCommun.Language

Building a Semantic IntraWeb with Rhizomer and a Wiki — 9/20

Rhizomer

• Ease of use:– Facilitate discovering unknown metadata

• Query results like SPARQL DESCRIBE

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

RDF

<HTML/>

<HTML/> SemFORMS

JavaScript

Building a Semantic IntraWeb with Rhizomer and a Wiki — 10/20

Rhizomer Architecture

search.html+JavaScript

Search FormSubmit

RDFSOAPSender

RDF/ACL query-ref / inform

RDF/ACL inform

results.jsp +XSLT

ResultsReturn

RDF Web Portal

Broker & Storage

SOAP(RDF/ACL)

Rhizomer

DB

MetadataStorePeer

Building a Semantic IntraWeb with Rhizomer and a Wiki — 11/20

Guided Tour: user input

= Property = Value NOTE: default namespace RDF/ACL

Semantics-enabled HTML Forms.

<form name="search" method="post" action=“RDFSOAPSender" onSubmit="search.content.value = buildRQL(search)"> <input name="http://purl.org/dc/elements/1.1/title" type="text"/> <select name="http://www.w3.org/1999/02/22-rdf-syntax-ns#type"> <option value="http://rhizomik.net/.../MP7Genres.rdfs#Music">... </select> ... <input type="hidden" name="performative" value="query-ref"> <input type="hidden" name="sender" value="search.html"> <input type="hidden" name="receiver" value=“rhizomer"> <input type="hidden" name="language" value=“SeRQL"> <input type="hidden" name="content" value=""> <input type="hidden" name="reply-to" value="results.jsp"></form> Search Form

SubmitRDFSOAP

Sender

Rhizomer

SOAP(RDF/ACL)

visible

hidden

search.html+JavaScript

Building a Semantic IntraWeb with Rhizomer and a Wiki — 12/20Rhizomer

Guided Tour: message content

On submit JavaScriptperformative=query-ref search.content=buildSeRQL(search):

= Property = Value NOTE: built from visible form elements

performative=inform search.content=RDF metadata to insert or delete.

select graph(S) from {S}http://purl.org/dc/elements/1.1/title{Y0},{S}http://www.w3.org/.../22-rdf-syntax-ns#type{Y1}

where Y0 like “The Best of*” and Y1=http://rhizomik.net/.../MP7Genres.rdfs#Music

RDFSOAPSender

SOAP(RDF/ACL)

Search FormSubmit

search.html+JavaScript

Building a Semantic IntraWeb with Rhizomer and a Wiki — 13/20Rhizomer

Guided Tour: message structure

RDFSOAPSender servlet: FORM submission SOAP(RDF/ACL):

= Property = Value NOTE: built from hidden form elements

or “acl:inform” / “acl:inform-not” for insert/delete

…then send it to “acl:receiver” URL.

search.html+ JavaScript

Search FormSubmit

RDFSOAPSender

SOAP(RDF/ACL)

<SOAP-ENV:Envelope xmlns:… > ...<SOAP-ENV:Body> <rdf:RDF xmlns:acl=“http://daml.umbc.edu/acldaml” ...><acl:query-ref>

<acl:sender>http://rhizomik.net/rhizomer/search.html</acl:sender><acl:receiver>http://rhizomik.net/rhizomer/broker</acl:receiver><acl:language>RQL</acl:language><acl:content parseType=“Literal”>select graph(S)...</acl:content><acl:reply-to>http://rhizomik.net/rhizomer/results.jsp</acl:reply-to>

</acl:query-ref></rdf:RDF></SOAP-ENV:Body></SOAP-ENV:Envelope>

Building a Semantic IntraWeb with Rhizomer and a Wiki — 14/20

RDF/ACL inform

DB

MetadataStorePeer

DB

Guided Tour: broker routing

• Web Service, SOAP interface.

• Common access point.

• Semantic routing input message to appropriate StorePeers, considers:– acl:language, acl:sender, acl:receiver,…

RDF/ACL query-ref / inform

Rhizomer

SOAP(RDF/ACL)

Building a Semantic IntraWeb with Rhizomer and a Wiki — 15/20

Rhizomer

RDF/ACL inform

RDF/ACL query-ref / inform

Guided Tour: store peer

• JXTA(RDF/ACL) messages.

• Implementations for RDF stores (and QL):– Sesame StorePeer (SeRQL),…

• Input processing: – performative query/insert/delete.– acl:content query or metadata.

• Query output also RDF/ACL. – Problem: not usual RDF stores

output RDF…

DB

MetadataStorePeer

DB

SOAP(RDF/ACL)

Building a Semantic IntraWeb with Rhizomer and a Wiki — 16/20

Guided Tour: build response graph

• For all Resources R selected by query…

• Algorithm graph(R): Build graph of depth 1 from selected resources R. Blank node closure

Fragment 2

Fragment 1

Fragment 3

Fragment 4

Identified Resource

Anonymous Resource

Literal

Building a Semantic IntraWeb with Rhizomer and a Wiki — 17/20 RDF/ACL query-ref / inform

Guided Tour: join responses

• Rhizomer:– Receives StorePeers RDF responses.– Joins responses into unique RDF model.– Return RDF/ACL message to RDFSOAPSender.

• acl:content = RDF Model serialisation

SOAP(RDF/ACL)

Rhizomer

RDF/ACL inform

DB

MetadataStorePeer

DB

Building a Semantic IntraWeb with Rhizomer and a Wiki — 18/20Rhizomer

Guided Tour: response presentation

• RDFSOAPSender: – Redirect to acl:reply-to URL for presentation.

• Result page: – Visualisation:

• XSLT: RDF to HTML or RDF to HTML FORM• Inference + XSLT: RDF to SVG• Other alternatives: RDF Path,…

– Use RDF labels for usability, multilingual support.

results.jsp +XSLT

ResultsReturn

RDFSOAPSender

SOAP(RDF/ACL)

Building a Semantic IntraWeb with Rhizomer and a Wiki — 19/20

Guided Tour: visualisation

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

view, RDF2HTML

edit, RDF2HTMLForm

view, RDF2HTML

search

Building a Semantic IntraWeb with Rhizomer and a Wiki — 20/20

Conclusions

• Usable framework (preliminary user tests)

• Simple and flexible– Example: Semantic Media Portal

Building a Semantic IntraWeb with Rhizomer and a Wiki — 21/20

Future Work

• AJAX to improve user interaction– Support back button– Assisted metadata creation…

• In deep user testing at the

• Metadata trust based on RDF signatures

• Fine grained access control

Thank you for your attention

More at: http://rhizomik.net

Contactroberto@rhizomik.netrosa.gil@diei.udl.es

top related