from html to services: building a site for rest, pox, ajax, rss, soap, and ws-*
DESCRIPTION
Your site is more than a collection of pages; it's a programmable platform that your users are leveraging in innovative new ways. Scraping, mashups, and RSS mean that your site is already a service, and the fastest, most flexible way to build that service is with Windows Communication Foundation (WCF).TRANSCRIPT
From HTML To Services From HTML To Services Building a Site for REST, POX, Building a Site for REST, POX, RSS, SOAP, and WS-*RSS, SOAP, and WS-*
Clemens VastersClemens VastersConnected FrameworkConnected FrameworkMicrosoft CorporationMicrosoft Corporation
[email protected]@microsoft.com
BTB021BTB021
From HTML To ServicesFrom HTML To Services
Hypertext and Pictures grew the WebHypertext and Pictures grew the Web
Thank You!Thank You!
Let’s Move On…Let’s Move On…
HypertextHypertext
Very 90’sVery 90’s
Your content links their contentYour content links their content
Click, Good-ByeClick, Good-Bye
… … But!But!
HTML is parseable markupHTML is parseable markupStructure focused on layout but Structure focused on layout but holds dataholds data
corzen.com spiders hundreds of jobsites corzen.com spiders hundreds of jobsites weekly and aggregates that into a leading weekly and aggregates that into a leading indicator for Wall Streets job market dataindicator for Wall Streets job market data
XML is generalized parseable markupXML is generalized parseable markupStructure focused on dataStructure focused on data
Facilitates “Community Standards” Facilitates “Community Standards” RSS, OPML, etc RSS, OPML, etc
Sites are services todaySites are services today
MashupMashup
http://www.vlogmap.orghttp://www.vlogmap.org
http://www.flashearth.comhttp://www.flashearth.com
http://www.weatherbonk.comhttp://www.weatherbonk.com
http://www.housingmaps.comhttp://www.housingmaps.com
http://www.corzen.comhttp://www.corzen.com
http://www.programmableweb.comhttp://www.programmableweb.com
Mashup ConsumersMashup Consumers
Your content is your content and their Your content is your content and their content and the other’s content… and content and the other’s content… and they let you!they let you!
Keep people on your propertyKeep people on your property
Rake the ad revenue, drive business Rake the ad revenue, drive business for partnersfor partners
Mashup ProvidersMashup Providers
Their content is your contentTheir content is your content
Make it easy to aggregate your stuffMake it easy to aggregate your stuffRSS, OPML, ATOM, ASX, any other RSS, OPML, ATOM, ASX, any other XML LingoXML Lingo
JSON – JavaScript Object NotationJSON – JavaScript Object Notation
Make it easy to interact with your stuffMake it easy to interact with your stuffREST, POX, and SOAP ServicesREST, POX, and SOAP Services
Rake in the revenue for your added-Rake in the revenue for your added-value or servicesvalue or services
It’s A MIXIt’s A MIX
HTML+AJAX: Client Aggregation HTML+AJAX: Client Aggregation PlatformPlatform
We love Firefox, Safari, Opera for We love Firefox, Safari, Opera for embracing our XMLHTTP model … and for embracing our XMLHTTP model … and for finally kicking NS 4.x off the clifffinally kicking NS 4.x off the cliff
Critical mass for cross-browser XML and Critical mass for cross-browser XML and AJAX support is hereAJAX support is here
Aggregate, embed, layer, extend, Aggregate, embed, layer, extend, reshape, recompose, map, render… reshape, recompose, map, render… do stuffdo stuff
It’s A MIXIt’s A MIX
Go cool with Avalon/WPF and FlashGo cool with Avalon/WPF and Flash
Go mobile with J2ME and Go mobile with J2ME and Windows MobileWindows Mobile
Go living-room with Windows Media Go living-room with Windows Media Center and Xbox 360Center and Xbox 360
The web of now is one of services and The web of now is one of services and many presentation surfaces and facetsmany presentation surfaces and facets
HTML isn’t dead, but it’s got companyHTML isn’t dead, but it’s got company
X’ing The WireX’ing The WireHTML/HTTPHTML/HTTP
HTML/HTTP are the common fabricHTML/HTTP are the common fabricThe Web’s Denim JeansThe Web’s Denim Jeans
Comfy, essential basics, but not so chicComfy, essential basics, but not so chic
Provides the most fundamental layout Provides the most fundamental layout and content integration capabilities and content integration capabilities
HTTP is the ubiquitous, scalable HTTP is the ubiquitous, scalable communication underpinning with a communication underpinning with a huge supporting infrastructure.huge supporting infrastructure.
Great for 90% of everything. But just thatGreat for 90% of everything. But just that
X’ing The WireX’ing The WireREST/POXREST/POX
POX: Plain Old XMLPOX: Plain Old XMLShip XML instead of HTMLShip XML instead of HTML
HTTP GET to access XML dataHTTP GET to access XML data
Easily aggregate and mashup with AJAXEasily aggregate and mashup with AJAX
REST: REpresentational State TransferREST: REpresentational State TransferAka “POX with dogma”Aka “POX with dogma”
Fully exploits HTTP application protocolFully exploits HTTP application protocol
Create/update/delete and linkingCreate/update/delete and linking
Very casual, baseline standards, Very casual, baseline standards, do what works…do what works…
X’ing The WireX’ing The WireSOAPSOAP
SOAP: Data + Metadata for MessagingSOAP: Data + Metadata for Messaging
Baseline standard for rich set of Baseline standard for rich set of messaging featuresmessaging features
Addressing, RoutingAddressing, Routing
In-Message Security, Identity FederationIn-Message Security, Identity Federation
Reliable MessagingReliable Messaging
Very rich model, requires rich stacksVery rich model, requires rich stacks
SOAP is no longer a toddler... or easySOAP is no longer a toddler... or easy
X’ing The WireX’ing The WireStreams/P2PStreams/P2P
Streamed Media, Large Data access Streamed Media, Large Data access DownloadsDownloads
Music On-DemandMusic On-Demand
Video On-DemandVideo On-Demand
P2P: Collaboration, Sharing, GamingP2P: Collaboration, Sharing, Gaming
Eastside, Westside, ServersideEastside, Westside, Serverside
Pinstripes or Hip-Hop, Pinstripes or Hip-Hop, nothing happens withoutnothing happens without
the serverthe server
Windows Communication Windows Communication FoundationFoundation
The Windows Communication The Windows Communication Foundation is the Universal Foundation is the Universal
Communication RuntimeCommunication Runtime
SOAP, REST, POX, P2P, Streaming.SOAP, REST, POX, P2P, Streaming.One-Way, Request/Response, Duplex.One-Way, Request/Response, Duplex.
Secure, Transacted, Reliable, Secure, Transacted, Reliable, Federated.Federated.
Interoperable, Productive, FastInteroperable, Productive, Fast
One Way to ProgramOne Way to Program
POX, No SOAPPOX, No SOAP
What Did We See?What Did We See?
POX/SOAP, HTTP/TCP, Binary/XML ?POX/SOAP, HTTP/TCP, Binary/XML ?… … all just a matter of configurationall just a matter of configuration
… … you program in one modelyou program in one model
WCF is the natural first choice WCF is the natural first choice For supplying data to AJAX appsFor supplying data to AJAX apps
For supplying data to smart clientsFor supplying data to smart clients
For web servicesFor web services
For integrationFor integration
Still Not Convinced?Still Not Convinced?
newtellivisionnewtellivision by newtelligence AG by newtelligence AGhttp://www.newtellivision.tvhttp://www.newtellivision.tv
SummarySummary
You asked, we listenedYou asked, we listened
We have the one runtime for all the We have the one runtime for all the backend magic that you need for your backend magic that you need for your sites and experiencessites and experiences
Check out WCF:Check out WCF:http://windowscommunication.nethttp://windowscommunication.net
Write me e-mail:Write me e-mail:[email protected]@microsoft.com
© 2006 Microsoft Corporation. All rights reserved.This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.