Title: Building a Semantic IntraWeb with Rhizomer and a Wiki
1Building a Semantic IntraWeb with Rhizomer and a
Wiki
- Roberto Garcia and Rosa Gil
- GRIHO (Human Computer Interaction Research Group)
- Universitat de Lleida, Spain
2Table of Contents
- Introduction
- Proposal
- Architecture
- Wiki Engine
- Rhizomer
- Rhizomer Architecture
- Guided tour
- Conclusions
- Future Work
3Introduction
- 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
4Proposal
- 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
5Architecture
- Wiki Engine manage HTML documents
- Rhizomer manage semantic metadata about them
WIKI ENGINE
RHIZOMER
URL
URL
URL
URL
6Wiki 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
7Wiki Engine
8Rhizomer
- Simplicity
- Abstraction layer on metadata stores (Sesame,
Jena,). - Common SOAP interface RDF/ACL conversations
- Implementation
- Java Servlets
- JSP
- JavaScript
SOAP
AgentCommun.Language
Rhizomer
MetadataStore
9Rhizomer
- 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
JavaScript
ltHTML/gt
ltHTML/gt SemFORMS
10Rhizomer Architecture
11Guided Tour user input
- Property Value NOTE default
namespace RDF/ACL - Semantics-enabled HTML Forms.
-
ltform name"search" method"post"
actionRDFSOAPSender" onSubmit"search.conten
t.value buildRQL(search)"gt ltinput
name"http//purl.org/dc/elements/1.1/title"
type"text"/gt ltselect name"http//www.w3.org/1
999/02/22-rdf-syntax-nstype"gt ltoption
value"http//rhizomik.net/.../MP7Genres.rdfsMusi
c"gt... lt/selectgt ... ltinput type"hidden"
name"performative" value"query-ref"gt ltinput
type"hidden" name"sender" value"search.html"gt
ltinput type"hidden" name"receiver"
valuerhizomer"gt ltinput type"hidden"
name"language" valueSeRQL"gt ltinput
type"hidden" name"content" value""gt ltinput
type"hidden" name"reply-to" value"results.jsp"gt
lt/formgt
visible
hidden
search.htmlJavaScript
RDFSOAPSender
Search Form Submit
SOAP(RDF/ACL)
Rhizomer
12Guided Tour message content
- On submit JavaScript
- performativequery-ref ? search.contentbuildSeRQL
(search) Property Value
NOTE built from visible form elements - performativeinform ? search.contentRDF
metadata to insert or delete.
select graph(S) from Shttp//purl.org/dc/elem
ents/1.1/titleY0, Shttp//www.w3.org/.../22-
rdf-syntax-nstypeY1where Y0 like The Best
of and Y1http//rhizomik.net/.../MP7Genres.r
dfsMusic
search.htmlJavaScript
RDFSOAPSender
Search Form Submit
SOAP(RDF/ACL)
Rhizomer
13Guided Tour message structure
- RDFSOAPSender servlet FORM submission Ã
SOAP(RDF/ACL) Property Value
NOTE built from hidden form elements -
- or aclinform / aclinform-not for
insert/delete - then send it to aclreceiver URL.
ltSOAP-ENVEnvelope xmlns gt ... ltSOAP-ENVBodygt
ltrdfRDF xmlnsaclhttp//daml.umbc.edu/acldaml
...gt ltaclquery-refgt ltaclsendergthttp//rhizomik
.net/rhizomer/search.htmllt/aclsendergt ltaclrecei
vergthttp//rhizomik.net/rhizomer/brokerlt/aclrecei
vergt ltacllanguagegtRQLlt/acllanguagegt ltaclconte
nt parseTypeLiteralgtselect graph(S)...lt/aclcon
tentgt ltaclreply-togthttp//rhizomik.net/rhizomer/
results.jsplt/aclreply-togt lt/aclquery-refgtlt/rdf
RDFgt lt/SOAP-ENVBodygt lt/SOAP-ENVEnvelopegt
search.html JavaScript
RDFSOAPSender
Search Form Submit
SOAP(RDF/ACL)
Rhizomer
14Guided Tour broker routing
- Web Service, SOAP interface.
- Common access point.
- Semantic routing input message to appropriate
StorePeers, considers - acllanguage, aclsender, aclreceiver,
SOAP(RDF/ACL)
RDF/ACL inform
Rhizomer
MetadataStorePeer
RDF/ACL query-ref / inform
15Guided Tour store peer
- JXTA(RDF/ACL) messages.
- Implementations for RDF stores (and QL)
- Sesame StorePeer (SeRQL),
- Input processing
- performative ? query/insert/delete.
- aclcontent à query or metadata.
- Query output also RDF/ACL.
- Problem not usual RDF stores output RDF
SOAP(RDF/ACL)
RDF/ACL inform
Rhizomer
MetadataStorePeer
RDF/ACL query-ref / inform
16Guided 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
17Guided Tour join responses
- Rhizomer
- Receives StorePeers RDF responses.
- Joins responses into unique RDF model.
- Return RDF/ACL message to RDFSOAPSender.
- aclcontent RDF Model serialisation
SOAP(RDF/ACL)
RDF/ACL inform
Rhizomer
MetadataStorePeer
RDF/ACL query-ref / inform
18Guided Tour response presentation
- RDFSOAPSender
- Redirect to aclreply-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)
Rhizomer
19Guided Tour visualisation
ltswrcSoftwareProject rdfabout"http//rhizomik.net/rhizomer"gt ltrdfslabelgtRhizomerlt/rdfslabelgt ltswrchomepage rdfresource "http//rhizomik.net/content/rhizomer"/gt ltrdftype rdfresourceswrcResearchProject"/gt lt/swrcSoftwareProjectgt
view, RDF2HTML
edit, RDF2HTMLForm
view, RDF2HTML
search
20Conclusions
- Usable framework (preliminary user tests)
- Simple and flexible
- Example Semantic Media Portal
21Future 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
22Thank you for your attentionMore at
http//rhizomik.net
- Contact
- roberto_at_rhizomik.netrosa.gil_at_diei.udl.es