Mashups! Presented by Zhao Jin. Outline What is a Mashup? How to build a Mashup? Demonstration References and Resources.

Slides:



Advertisements
Similar presentations
Seminar on Emerging Trends in Data Communication and Dissemination Statistical Data as a Service and Internet Mashups by Zoltan Nagy 19 February 2010.
Advertisements

Composing Your Learning Environment Warwick Bailey, Director Icodeon Ltd Cambridge, UK.
General introduction to Web services and an implementation example
Web 2.0 for AtGentive A Brief Introduction to Web 2.0 Ye DENG
ITCS 6010 DATA INTEGRATION Krishna Kant Sri Harsha Pokala Vamsi Krishna Jamulapati.
DOT NET WEB SERVICES Agenda  Web Services Discussion  Quick DOT NET DEMO  Assignment Assignment  Lab: Hello World Service/Client  Lab: Google Client.
What is a web service?  A remote procedure call (RPC) over HTTP.  A web-accessible operation that takes input and returns results in XML.  Like a web.
INNOV-3: Mashup Basics or > 2 Sheldon Borkin VP Technology Rick Kuzyk Sr Portfolio Specialist.
ΗΛΕΚΤΡΟΝΙΚΟ ΕΜΠΟΡΙΟ Web Services Overview Mary Grammatikou 9/06/2009.
Library Mashups Exploring new ways to deliver library data Nicole C. Engard, Book Editor.
Dynamic Web Pages Bert Wachsmuth. Review  Internet, IP addresses, ports, client-server, http, smtp  HTML, XHTML, XML  Style Sheets, external, internal,
Mannheim Web 2.0 Systems Development. Plan Being an early-adopter Web 2.0 technologies Mashups Google Earth and kml XQuery and eXist.
Web Services CS Web Services Internet-available services using XML messaging, for computer-computer interaction Not tied to any OS or language Self-describing:
RSS RSS is a method that uses XML to distribute web content on one web site, to many other web sites. RSS allows fast browsing for news and updates.
Programming with Amazon, Google, and eBay Chunju Tseng (Lu)
Mohammed Saiyeedur Rahman.  E-commerce is buying and selling goods over the internet. This could include selling/buying mobile phones, clothes or DVD’s.
© 2006 by IBM 1 How to use Eclipse to Build Rich Internet Applications With PHP and AJAX Phil Berkland IBM Software Group Emerging.
Using the DPLA API as Community Reps Webinar August 19, 2014 A PLATFORM TO BUILD UPON Danielle Cunniff
INTRODUCTION TO WEB DATABASE PROGRAMMING
Web Applications Harry R. Erwin, PhD University of Sunderland CIT304/CSE301.
CIS 451: Web Services Dr. Ralph D. Westfall March, 2009.
Java Beans.
GIS technologies and Web Mapping Services
About Dynamic Sites (Front End / Back End Implementations) by Janssen & Associates Affordable Website Solutions for Individuals and Small Businesses.
1 San Diego, California 25 February Automating Your Interactions with ARIN Mark Kosters Chief Technology Officer.
Wyatt Pearsall November  HyperText Transfer Protocol.
Web Mashups -Nirav Shah.
Mashups! Matt Rahr ECAT – University of Arizona. Technical Workshop  Three Sessions  1:00 – 1:30pm What is a Mashup? How it can spatially enable your.
Web Mapping Seth Peery, Senior GIS Architect
Or, Hey can’t we just do it using HTTP for the envelope?
Nadir Saghar, Tony Pan, Ashish Sharma REST for Data Services.
© 2002 IBM Corporation Web 2.0 Mashups Project Proposal UCLA CS130, Spring 2007 Alex Rodriguez SWG – Tivoli Chris.
Google APIs Why Aren’t You Using Them? Jeff Blankenburg Project Engineer Quick Solutions, Inc.
1 MSCS 237 Overview of web technologies (A specific type of distributed systems)
What You Will Learn? - What is Keyword and Why it’s Important? - How To Brainstorm Keyword Ideas. - How To check the Search Volume.
Mashups Damon Hearne
Android networking 1. Network programming with Android If your Android is connected to a WIFI, you can connect to servers using the usual Java API, like.
DM_PPT_NP_v01 SESIP_0715_JR HDF Server HDF for the Web John Readey The HDF Group Champaign Illinois USA.
XML – Its Role and Use Ben Forta Senior Product Evangelist, Macromedia.
Dr. Martin Zhao Sept 4, Topics HTML and related tutorials on w3schools.com Related HTML tags Adding interesting features using JavaScript What is.
1 Alternative view on Internet Computing Web 1.0 –Web 1.0 is first generation, Web Information based. Driven by Information provider. Web 2.0 Ajax enabled.
Advanced Web Technologies Lecture #4 By: Faraz Ahmed.
Introduction to Web Services
CSCE 315 – Programming Studio Spring Goal: Reuse and Sharing Many times we would like to reuse the same process or data for different purpose Want.
WEB SERVER SOFTWARE FEATURE SETS
Web Technologies Lecture 10 Web services. From W3C – A software system designed to support interoperable machine-to-machine interaction over a network.
Warwick Bailey, Director Icodeon Ltd Cambridge, UK Using Common Cartridge Technology.
Lecture VII: Mashups CS 4593 Cloud-Oriented Big Data and Software Engineering.
©2010 AIR WORLDWIDE 1 Using ArcGIS Server Web Map Services in Web Map Mash-Ups Benjamin Spaulding, Ph.D. AIR Worldwide Esri Boston Dev Meet-Up 12/8/2010.
XML Tools (Chapter 4 of XML Book). What tools are needed for a complete XML application? n Fundamental components n Web infrasructure n XML development.
1 G52IWS: Web Services Description Language (WSDL) Chris Greenhalgh
Web 2.0 IS530 Fall 2009 Dr. Dania Bilal. Web 2.0 Is the Web that is being transformed into a computing platform for delivering web applications to end.
Google Map API The Google Maps API lets you embed Google Maps in your own web pages with JavaScript The API provides a number of utilities for manipulating.
© 2010 IBM Corporation RESTFul Service Modelling in Rational Software Architect April, 2011.
NCCUCS 軟體工程概論 Lecture 5: Ajax, Mashups April 29, 2014.
INTRODUCING HYBRID APP KAU with MICT PARK IT COMPANIES Supported by KOICA
Eclipse Vorto Alexander Edelmann.
Mapping for the interwebs
Web Mashups -Nirav Shah.
API (Application Program Interface)
WEB SERVICES From Chapter 19 of Distributed Systems Concepts and Design,4th Edition, By G. Coulouris, J. Dollimore and T. Kindberg Published by Addison.
REST: Web Services Abel Sanchez.
Mashups! Presented by Zhao Jin.
Lesson 11: Web Services & API's
Web Services CO5027.
One Click Textbooks CSE 454 By Mark, Nick, and Ken.
PHP / MySQL Introduction
Middleware, Services, etc.
WEB SERVICES From Chapter 19, Distributed Systems
Presentation transcript:

Mashups! Presented by Zhao Jin

Outline What is a Mashup? How to build a Mashup? Demonstration References and Resources

What is a Mashup? (Music) A musical genre which combines the layers of music from different songs (Computing) A website or web application which combines contents from different websites

A Simple Example User Mashup website What are the available flats near NUS? Real estate website Google Map Request for available flat list Flat list Request for area map Area map Map with available flats marked

Pros and Cons Pros –Information reuse –More resources to play with Cons –Network congestion –Speed bottleneck –Danger of service failure

How to build a Mashup? Prerequisites Three steps –Planning –API sign-up –Coding

Prerequisites Required –Programming Language –Web Programming –XML Manipulation (XPath, XQuery, etc…) Recommended –Web authoring tools

Planning Pick a subject –A Mashup of What? Map + Real Estate? Bookshop + Library Catalog? –More sources of data  More complicated Decide your data sources –Who is your data provider? Maps: Google maps, Yahoo maps, etc.. Online shopping: Amazon, EBay, etc.. –Usually language agnostic –Varying complexity

Planning Other concerns –How much time do you have? –Do you have a server to run it on? –Which programming language?

API Sign-up Sign-up for the API –Visit the homepage of your data source and sign up –Example:

Coding – The big picture User Mashup website User Request Website 1 Website 2 API CallDataAPI Call Data Data presentation Data Manipulation

Coding – The steps API Call Data Manipulation Web programming

API Call Types of API – How to call? –REST –XML-PRC –SOAP –Javascript Functions of API – What to call? –API specific

Types of API - REST Request in HTTP and Response in XML Example: Google Geocoder – –q – The address that you want to geocode –Key – Your API key –Output – The output format Sample request: – mphitheare+mtn+view+ca&key=***&output= xml

Types of API - REST Sample response: 1600 Amphitheatre Pkwy, Mountain View, CA 94043, USA , ,0

Types of API – XML-RPC Request/Response in XML via HTTP Example: MSN Blogging API –XmlRpcClient in Apache Sample Request: – getStateName 4

Types of API – XML-RPC Sample Response – South Dakota

Types of APIs – SOAP Request/Reply in SOAP format via SMTP/HTTP Example: MSN Search API –HttpURLConnection in Java –Post the XML to the target URL Sample request:

Types of APIs – SOAP Sample Response Toptimate

Types of APIs – JavaScript Request/Reply embedded in a stub object XML not required unless data needed explicitly Example: Gogglemap –GMAP2 in Googlemap API –Var map = new GMAP2(document.getElementById(“map”)) –map.setCenter(new GLatLng( , ),13));

Functions of API API specific –Learn as needed

Data Manipulation Purpose: –To generate API requests –To process API responses –To represent data internally Two components –Data schema –Tools for manipulation

Data schema (XML) Define the schema for your data –What data do you want to store? Entities and attributes –Good to be generic Learn the schema of the APIs

Tools for manipulation Basic level –Parser, Modifier, Writer –Available online Higher level –Filter, Converter, Generator –Need to write on your own Check out the tutorial for XPath, XQuery, etc.

Web Programming Design UI for your page

Putting everything together Your Mashup = API calls + Data Manipulation + UI User Mashup website User Request Website 1 Website 2 API CallDataAPI Call Data Data presentation Data Manipulation

Demonstration Googlemap + Craigslist Real Estate – Amazon + NLB catalog –

References and Resources Reference: –Wikipedia: ybrid) ybrid) –Tutorial from IBM ultimashup1.html ultimashup1.html Resources: –List of Mashups, APIs:

References and Resources Resources: –APIs and Platforms Amazon: Googlemap: –XPath, XQuery Tutorial: