Intelligent Mashups

9
Intelligent Mashups How AI meets Mashups Adrian Giurca

Transcript of Intelligent Mashups

Page 1: Intelligent Mashups

Intelligent MashupsHow AI meets Mashups

Adrian Giurca

Page 2: Intelligent Mashups

Comments on actual mashup platforms• Using Gadgets users should be able to do JavaScript

programming. The alternative is to use already existent gadgets i.e. add then on a web page.

• Using existent gadgets limits the user interaction• To implement gadgets dependencies one should really

write another gadget.• Catching user activity is at the programming level (hard

for business people)• Using Yahoo Widgets one need to install proprietary

software on your local machine• Using Amazon Widgets one cannot change the widget

behavior but just presentation

Page 3: Intelligent Mashups

What is an Intelligent Mashup?

• An Intelligent Mashup is a mashup using Artificial Intelligence reasoning techniques to combine different web services and applications.

• One way to do intelligent mashups is to embed rule-based reasoning inside mashups.

• Dealing with usual data (XML, Atom, RSS, HTML) and Semantic Web data (RDF, RDFS, OWL) allows reasoning on the Semantic Web too

Page 4: Intelligent Mashups

Why Intelligent Mashups• HTML 5 is on the way and adds new innovative

elements, allowing authors to easily publish all kind of content, including multimedia content and users interact with this content

• People spend some time on social networks (such as LinkedIn) i.e. they interact with the netwok in the Web browser

• Web creators look more and more on adaptive user interfaces to simplify user activity

• Users like to be more and more involved in the Web content creation

• Many developers do mashups but most of the cases there is a low or none user innovation inside.

Page 5: Intelligent Mashups

Why Rule-Based Mashups• Can you easily implement the below functionality just

using plain JavaScript or some JS framework?1. [Usability] IF the user reads Reuters news about swine flu, THEN

deliver him similar video news from CNN and possibly update his swine flu Google Map

• [Advertising] IF the user loads financial news, offers him a three months subscription to Financial Times

• [Accessibility] Whenever the user clicks more than 3 times a menu item add this item to the fast access menu items.

• Can you update this functionality in an easy way?• In some conditions, rules can implement widgets

dependencies too

Page 6: Intelligent Mashups

Reasoning inside server-side mashups

• Old knowledge better infrastructure and technologieso Classical AI applications tailored by actual technologies (e.g.

running Drools instead CLIPS or running Jena Rules instead of Prolog rules) providing better integration with the existent middleware

o AI based combination of (Semantic) Web Services

• Proso Deriving new knowledge assets using well known classical AI

applicationso Deriving intelligent Web Services (based on AI integration with

actual technologies) aka Semantic Web Services• Cons

o Need skilled developerso Less social

Page 7: Intelligent Mashups

Reasoning inside client-side mashups

• Innovative AI applications using the browser infrastructure and technologieso combining remote information from different services together

with the information derived from the user activityo using Event-Condition-Action Rules to describe the reasoning

• Proso Designed and created by users (No high skilled developers)o Deriving new knowledge assets (e.g. new feeds)o Improving the user activity towards live fulfilling of the user

goals• Cons

o Consume the users hardware resourceso Keep their data on third party serverso Security at the browser level

Page 8: Intelligent Mashups

Benefits and Drawbacks (1)

1. Easy Modeling – rules are a natural way to express things and relationships (are they ?)

2. Complex business workflows (BPMN?);3. Information can be fetched and displayed in

anticipation of the user response;4. Support for intelligent user interfaces5. Allow re-syndication6. Search based on public Web services - via Ajax7. Move the reasoning process to the client-side

resulting in reduced network traffic and faster response;

8. Support for public and private mashups

Page 9: Intelligent Mashups

Benefits and Drawbacks (2)

1. Declarative programming - (Some people like rules some others not).

2. Pages can be incrementally updated in response to the user input, including the usage of cached data;

3. Service aggregation - Using ECA rules 4. Side effects - Rule actions allow any JavaScript

function call5. Any presentation layer - Induced by CSS availability6. Speed - Scalability tests should be performed 7. Stability - As much as any other JavaScript-based

application8. Security - As much as any other JavaScript-based

application