Title: Providing Personalized Mashups Within the Context of Existing Web Applications
1Providing Personalized Mashups Within the Context
of Existing Web Applications
The 8th International Conference on Web
Information Systems Engineering
- Oscar Díaz, Sandy Pérez and Iñaki Paz
- ONEKIN Research Group
- University of the Basque Country
- San Sebastián (Spain)
- Dec 6th, 2007
2Outline
- Introduction
- MARGMASH
- Conclusions
3Personalization
- Personalization is the process of tailoring pages
to individual users characteristics or
preferences that will be meaningful to their
goals. - However, it is not always easy for the designer
to foresee the distinct utilization contexts and
goals from where the application is accessed.
4Personalization a do-it-yourself approach
- Traditional approaches
- everything for the people, nothing by the
people - difficult to foresee all circumstances
- Do-it-yourself approach
- end users add their own content
- once the application is already deployed
5Mashup approach
- Mashups allow the user to combine existing data
from disparate sources in innovative ways.
is the resource to be capitalized on
http//fr.local.yahoo.com
A MASHUP
6Mashup approach
- But frequently,
- you are gathering data not just for the sake of
the data itself - but to help you to make some decisions.
7Mashup approach
http//www.expedia.com
it would be most convenient to post the mashup
data by the application where the decision is
taken.
Another application
An application
A MASHUP
8Mashup personalization
- Process whereby
- recurrent users
- It is not useful for sporadic users
- can enrich
- no replacement nor deletions
- existing applications
- no new applications
- with additional data using a mashup approach
- taking data from elsewhere
9Outline
- Introduction
- MARGMASH
- Conclusions
10Yahoo! Pipes
(2) Fill the required modules fields
input
input
(3) Connect modules between them
output
(1) Drag modules from the panel on the left and
drop them in the main panel.
11MARGMASH website mashup
- Website
- Any existing web application
- Mashup
- A Yahoo! pipe
- MARGMASH is the
12Lets consider as a website
- Pantallazo de expedia.com
13Lets consider the pipe
inputs
output
14MARGMASH at runtime
input
input
output
15MARGMASH at building time
- Five main steps
- Navigation
- Page Classification
- Mashup Anchors
- Pipe Assignment
- Mapping Pipe Inputs
16Navigation
Which are the pages where the end user would
like to post pipes?
- Lets the user to navigate to the page where a
mashup needs to be posted.
17Page Classification
How can these pages be identified?
Page classification helps distinguish between
pages on applications
18Page Classification
A page class is defined as the set of pages that
describe the same type of information and have a
similar page structure
Search
Results
Info.
19Page Classification
is identified through an absolute XPath over the
DOM tree.
the user annotates the page by selecting some
HTML elements.
Notice that, we are abstracting from a
page-instance-based input selection to a
page-class-level identification of the
distinct elements on the page.
20Mashup Anchors
Where does the user want the pipes to be located?
- Mashup anchors play a double role.
- they hint for placing the mashup output.
- they provide some feed data for the associated
mashup
21Pipe Assignment
pipes identifiers
pipes output layout
Which pipes does the user want to be posted to
a certain anchor?
pipes navigation mode
22Mapping Pipe Inputs
From where does the user extract the data that
feed the pipes input?
pipes starting feeds
23Outline
- Introduction
- MARGMASH
- Conclusions
24Conclusions
- Margmash website mashup
- The mashup is contextualized
- by delivering it within an existing website
- The website acts as
- the initial data provider for the mashup input
parameters - as well as the container for its output
25Contact
Oscar Díaz oscar.diaz_at_ehu.es Sandy
Pérez sandy-perez_at_ikasle.ehu.es Iñaki
Paz inaki.paz_at_ehu.es
http//www.onekin.org