tagging aware portlets oscar díaz, sandy pérez and cristóbal arellano onekin research group...
Post on 02-Jan-2016
216 Views
Preview:
TRANSCRIPT
Tagging Aware Portlets
Oscar Díaz, Sandy Pérez and Cristóbal Arellano
ONEKIN Research GroupUniversity of the Basque Country
San Sebastián (Spain)
The 9th International Conference on Web EngineeringJune 25th, 2009
O. Díaz, S. Pérez & C. Arellano 2
Agenda
Background
Problem statement• Tagging through portals can lead to tagging
data scattering
Contribution• Portal tagging commodity
Conclusions
Background
What is a corporate portal?What is social tagging?
Corporate portal + social taggingWhat is a portlet?
O. Díaz, S. Pérez & C. Arellano 4
What Is a Corporate Portal?
Calendar
Discussions
Wiki Blogs
Localization
Personalization
PortalAggregation of
content
Messaging & Collaboration
Enterprise Search
Customization &Personalization
Security
Browser
Information Sources
ContentManagement
Content Presentation
Workflow
A web application whose main focus is on integration and pesonalization
• Aggregation of content
• Content Management
• Messaging & Collaboration
• Enterprise Search
• Security
• Content Presentation
• Customization & Personalization
• Workflow
O. Díaz, S. Pérez & C. Arellano 5
What Is Social Tagging?
javascript
ajax
Peter Bobajax
web2.0
Social Tagging = <resource,user,tag>
<Ajax: The Definitive Guide,Peter,ajax> <Ajax: The Definitive Guide,Peter,javascript> <Ajax: The Definitive Guide,Bob,web2.0> <Ajax: The Definitive Guide,Bob,ajax>
O. Díaz, S. Pérez & C. Arellano 6
Portals & Social Tagging: Company Perspective
Advantages• Harnessing collective intelligence• Creating links to connect information together• Intelligent content suggestions• Effective enterprise search and discovery
The DOGEAR experience• Enterprise tagging service saves
IBM $4.6 million a year.
O. Díaz, S. Pérez & C. Arellano 7
Portals & Social Tagging: Employee Viewpoint
Advantages:• Future retrieval• Contribution and sharing• Attract attention • Play and competition• Self presentation• Opinion expression
(Marlow et al.)
O. Díaz, S. Pérez & C. Arellano 8
Fragments
What Is a Portlet?
A Java technology based Web component.
Managed by a portlet container.
Processes requests and generates dynamic content.
Are used by portals as pluggable user interface components that provide the presentation layer of Information Systems.
Portlets
LibraryPortlet
AllWebJournalPortlet
TagBarPortlet
Portlet Container
Portal Server
…
O. Díaz, S. Pérez & C. Arellano 9
Remote Portlets
INTERNET
Portlets
TagBarPortlet
Portlet Container
Fragments
Portal Server
Portlets
Portlet C
ontainer
Fragments
LibraryPortlet
AllWebJournalPortlet
LibraryPortlet
Portlets
Portlet C
ontainer
Fragments
AllWebJournalPortlet
www.amazon.com
dblp.uni-trier.de?
WS
RP
Pro
du
cer
WS
RP
Producer
WS
RP
Con
sum
er
Consumer consumes presentation-oriented web services offered by content producers.
Producer provides portlets as presentation-oriented web services that can be used by aggregation engines.
O. Díaz, S. Pérez & C. Arellano 10
INTERNET
Portlets as Presentation-Oriented Web Services Presentation-oriented
web services Traditional Web Services
Portal Server
WSRP Consumer
WSRP Producer
Portlet Container
INTERNET
Portal Server
Portlets
LibraryPortlet
Web Services
LibraryWeb Service
Web Service Client
User Interface
User Interface
Problem Statement
Antecedents
The problem
O. Díaz, S. Pérez & C. Arellano 12
Tagging through Dedicated Sites (e.g. Delicious)
Delicious is self-sufficient.• all is needed for tagging (i.e. resources, users
& tags) is kept within the tagging site
Delicious is self-centered.• all Delicious care about is its own resources,
users and tags.• No links exist with other tagging sites.
O. Díaz, S. Pérez & C. Arellano 13
Tagging through a Portal
Current approaches:
• Tagging as part of an integrated application
• Tagging as a portal functionality
O. Díaz, S. Pérez & C. Arellano 14
Tagging as Part of an Integrated Application
Portal Server
WSRP Consumer
WSRP Producer
Portlet Container
INTERNET
Portlets
LibraryPortlet
< , , >TagUserREMOTE Resource A third-party provider offers tagging capabilities on its own (e.g. amazon)
Drawbacks…• collective intelligence
is created outside the company
• every provider is a tagging island
REMOTE Resource User Tag
O. Díaz, S. Pérez & C. Arellano 15
Tagging as a Portal Functionality
Portal Server
WSRP Consumer
WSRP Producer
Portlet Container
INTERNET
Portlets
LibraryPortlet
< , , >TagUserLOCAL Resource The portal offers tagging for its own content (this is the current approach)
Advantage• collective intelligence is
retained in the context of the organization
Disadvantage• tagging is restricted to those
resources within the realm of the portal.
LOCAL Resource User Tag
O. Díaz, S. Pérez & C. Arellano 16
Problem Statement
Portal Server
WSRP Consumer
WSRP Producer
Portlet Container
INTERNET
Portlets
LibraryPortlet
< , , >TagUserLOCAL Resource
< , , >TagUserREMOTE Resource
LOCAL Resource
REMOTE Resource
User Tag
User Tag
Tagging data is scattered!!
• At the portal – for local resources
• At the remote place1– for resources at place1
• At the remote place2 – for resources at place2
Contribution
Portal tagging commodity
Challenges & their solutions
O. Díaz, S. Pérez & C. Arellano 18
Portal Tagging Commodity: What Is a Commodity?
A commodity is a general functionality to be used by other services
• Services realized through portlets
O. Díaz, S. Pérez & C. Arellano 19
Portal Tagging Commodity:Vision & Aims
Portal Server
WSRP Consumer
WSRP Producer
Portlet Container
INTERNET
Portlets
LibraryPortlet
Homogenous tagging of resources no matter where they reside
Tagging data of external resources (e.g. amazon books) does not leak outside the company
< , , >TagUserLOCAL Resource
< , , >TagUserREMOTE Resource
LOCAL Resource
REMOTE Resource
User Tag
User Tag
O. Díaz, S. Pérez & C. Arellano 20
INTERNET
Homogenous Tagging of Resources
INTERNET
Portlet Container
Portlets
LibraryPortlet
WSRP Producer
Portlet Container
Portlets
AllWebJournalPortlet
WSRP Producer
WSRP Consumer
Portal Server
resource<book>
resource<publication>
user tag
O. Díaz, S. Pérez & C. Arellano 21
Tagging Data Retention within the Organization
INTERNET INTERNET
Portlet Container
Portlets
LibraryPortlet
WSRP Producer
WSRP Consumer
Portal Server
WSRP Consumer
Portal Server
resource<book>
user usertag tag
O. Díaz, S. Pérez & C. Arellano 22
Portal Tagging Commodity: Design Requirement
Tagging must be conducted at the place tag-able resources are rendered (i.e. the portlet)
O. Díaz, S. Pérez & C. Arellano 23
Vision Realization: Challenges
Tag-able resource identification• What can be tagged?
Tagging functionality location• Where is tagging conducted?
Location transparency• Tagging data query span over all resources
no matter where they are located
O. Díaz, S. Pérez & C. Arellano 24
Challenge: Tag-able Resource Identification
How can portlets make the portal aware of their tag-able resources?
O. Díaz, S. Pérez & C. Arellano 25
INTERNET
Facing the Challenge …
The main means for portlet-to-portal communication is the markup fragment
We propose to annotate this markup with tagging concerns using RDFa
To this end, an ontology –PartOnt– is defined, which should serve to indicate what to tag
Portal Server
WSRP Consumer
WSRP Producer
Portlet Container
Portlets
LibraryPortlet
User Interface
user tag
resource
O. Díaz, S. Pérez & C. Arellano 26
Example: Identifying Tag-able Resources
<table> <tr> <td><img src="http://..."/></td> <td> <table> <tr> <td><strong>Ajax: The Definitive Guide </strong></td> </tr> <tr> <td>by Anthony T. Holdener</td> </tr> </table> </td> </tr></table>
<div xmlns:books=“http://www.amazon.com/books/” xmlns:partont=“http://www.onekin.org/.../partont.rdfs#”>
<table about="[books:${book.ISBN}]"> <tr> <td><img src="http://..."/></td> <td> <table> <tr> <td><strong>Ajax: The Definitive Guide </strong></td> </tr> <tr><td>by Anthony T. Holdener</td></tr> </table> </td> </tr> </table>…</div>
O. Díaz, S. Pérez & C. Arellano 27
Challenge: Tagging Functionality Location Tagging must be conducted at the place tag-able
resources are rendered (i.e. the portlet markup fragment).
However, portlets should not deliver their own tagging functionality which should be provided by the portal.
That is, portals own the tagging front-end (i.e. tagging widgets) that needs to be injected into the portlet markup.
How can the portal know where to inject these widgets?
O. Díaz, S. Pérez & C. Arellano 28
Facing the Challenge …
The PartOnt ontology should also serve to indicate where to tag.
To this end, a Hook class is included, with a subclass TagListHook that denotes an extension point for adding markup to show/update the tag list.
O. Díaz, S. Pérez & C. Arellano 29
Facing the Challenge …
<div xmlns:books=“http://www.amazon.com/books/” xmlns:partont=“http://www.onekin.org/.../partont.rdfs#”>
<table about="[books:${book.ISBN}]"> <tr> <td><img src="http://..."/></td> <td> <table> <tr> <td><strong>Ajax: The Definitive Guide </strong></td> </tr> <tr><td>by Anthony T. Holdener</td></tr> </table> </td> </tr> </table>…</div>
<div xmlns:books=“http://www.amazon.com/books/” xmlns:partont=“http://www.onekin.org/.../partont.rdfs#”>
<table about="[books:${book.ISBN}]"> <tr> <td><img src="http://..."/></td> <td> <table> <tr> <td><strong>Ajax: The Definitive Guide </strong></td> </tr> <tr><td>by Anthony T. Holdener</td></tr> <tr> <td>
<div rel="partont:relatedWith" typeof="partont:TaglistHook" style="display: none;" />
</td> </tr> </table> </td> </tr> </table>…</div>
O. Díaz, S. Pérez & C. Arellano 30
The PartOnt Ontology
O. Díaz, S. Pérez & C. Arellano 31
Challenge: Location Transparency
E.g. A query for resources being tagged as “forDevelProject” should deliver…
• books (LibraryPortlet)
• publications (AllWebJournalPortlet)
• post blogs (locally provided), etc
…being tagged as used in this project.
O. Díaz, S. Pérez & C. Arellano 32
However…
External resources are outside the portal realm• Amazon’s books belong to Amazon
A portlet-based portal hands presentation over the portlets.
So, a mean is needed for the user to express the query and expand it across resources, no matter their location.
O. Díaz, S. Pérez & C. Arellano 33
Facing the Challenge …
Expressing the query…• A new portlet –TagBarPortlet– has been built.• This portlet renders the tags available in the
tagging repository, and permits the user to select one of them.
Expanding the query across resources…• To this end, we use the event mechanism
available in the Portlet Specification.
Conclusions
O. Díaz, S. Pérez & C. Arellano 35
Conclusions
A tagging commodity for portals has been proposed (and implemented in Liferay)
Advantages:• Portal ownership of tagging data• Folksonomy consistency
Thanks for your attention!
Pleeeeeeeeeeeeease ASK FOR A DEMO!!
top related