Transcript Document

Improving Human-Semantic Web Interaction:
The Rhizomer Experience
Roberto García and Rosa Gil
GRIHO - Human Computer Interaction Research Group
Universitat de Lleida, Spain
Table of Contents
•
•
•
•
•
•
•
•
Introduction
Proposal
Architecture
Wiki Engine
Rhizomer
Guided tour
Conclusions
Future Work
Improving Human-Semantic Web Interaction: The Rhizomer Experience — 2/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
Improving Human-Semantic Web Interaction: The Rhizomer Experience — 3/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,…
Improving Human-Semantic Web Interaction: The Rhizomer Experience — 4/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
Improving Human-Semantic Web Interaction: The Rhizomer Experience — 5/21
Architecture
• Wiki Engine: manage HTML documents
• Rhizomer: manage semantic metadata, about wiki
docs or other resources
RHIZOMER
WIKI ENGINE
URL
link
link
URL
URL
link
#anchor
URL
link
Improving Human-Semantic Web Interaction: The Rhizomer Experience — 6/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
Improving Human-Semantic Web Interaction: The Rhizomer Experience — 7/21
Wiki Engine
Improving Human-Semantic Web Interaction: The Rhizomer Experience — 8/21
Rhizomer
• Simplicity:
edit delete
Rhizomer
Metadata
Store
Improving Human-Semantic Web Interaction: The Rhizomer Experience — 9/21
DEL
PUT
search new
GET
• Java Servlets
• JSP
POST
– Abstraction layer on metadata stores
(Sesame, Jena,…).
– REST interface
– Implementation
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
JavaScript
<HTML/>
<HTML/> SemFORMS
Improving Human-Semantic Web Interaction: The Rhizomer Experience — 10/21
Guided Tour: query
Improving Human-Semantic Web Interaction: The Rhizomer Experience — 11/21
Guided Tour: query
swrc:Project
specific properties
DOAP
Ontology
SWRC
Ontology
FOAF
Ontology
Search Project
carriedOutBy
financedBy
head
isAbout
member
product
projectInfo
Enter Text
Enter Text
Enter Text
Enter Text
Enter Text
Enter Text
Enter Text
<form method=“GET” onSumbit=“buildSPARQL”>
<input type=“text” name=
“http://swrc…org/ontology#carriedOutBy”/>
<input type=“text” name=
“http://swrc…org/ontology#financedBy”/>
+
…
SearchAdd property
</form>
GET
?query=
DESCRIBE ?s
WHERE {
?s swrc:carriedOutBy ?y0;
swrc:financedBy ?y1.
FILTER regex(?y0, "…") &&
?y1=<http://www….> }
Improving Human-Semantic Web Interaction: The Rhizomer Experience — 12/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
Improving Human-Semantic Web Interaction: The Rhizomer Experience — 13/21
Guided Tour: store
• DESCRIBE R2:
build CBD(R2) = Fragment 2 U rdfs:labels
Fragment 1
Fragment 3
R2
label
Fragment 2
Fragment 4
Identified Resource
Anonymous Resource
Literal
Improving Human-Semantic Web Interaction: The Rhizomer Experience — 14/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.
Improving Human-Semantic Web Interaction: The Rhizomer Experience — 15/21
Guided Tour: interaction
<swrc:SoftwareProject
rdf: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
Improving Human-Semantic Web Interaction: The Rhizomer Experience — 16/21
Guided Tour: interaction
edit or new
http://rhizomik.net/rhizomer
type
swrc:SoftwareProject
type
swrc:ResearchProject
homepage
http://rhizomik.net/rhizomer
label
Rhizomer
+
edit
new
del
REST POST
REST PUT
REST DELETE
Change/Add
Add property
Improving Human-Semantic Web Interaction: The Rhizomer Experience — 17/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”/>
<Subject,…
<input type=“text” name=“http://...w3.org/.../rdf-syntax-ns#type”
value=“http://swrc…org/ontology#SoftwareProject”/>
Predicate,Object>
<input type=“text” name=“http://...w3.org/.../rdf-schema#label”/
value=“Rhizomer”/>
Predicate,Object>
…
</form>
– PUT: add metadata fragment
– POST: delete metadata fragment for ID
and add new metadata
Improving Human-Semantic Web Interaction: The Rhizomer Experience — 18/21
Conclusions
• Usable framework (preliminary user tests)
• Simple and flexible
– Example: Semantic Media Portal
Improving Human-Semantic Web Interaction: The Rhizomer Experience — 19/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
Improving Human-Semantic Web Interaction: The Rhizomer Experience — 20/21
Thank you for your attention
More at: http://rhizomik.net
Contact
[email protected]
[email protected]