Post on 18-Jan-2016
XML:XML:A Revolution UnfoldsA Revolution Unfolds
Adam BosworthAdam BosworthGeneral ManagerGeneral Manager
Microsoft CorporationMicrosoft Corporation
AgendaAgenda XML todayXML today Realizing the Web’s full Realizing the Web’s full
potentialpotential Implications for XMLImplications for XML
Next StepsNext Steps
XML TodayXML Today
XML & Web-Based, 3-Tier XML & Web-Based, 3-Tier ApplicationsApplications
Storage
Middle-Tier
Client
DataIntegration
Presentation &Interaction
Delivery &Manipulation
What’s shipping todayWhat’s shipping today XML support in Internet Explorer XML support in Internet Explorer
4.0 4.0 XML Parser XML Parser XML Data Source Object (DSO)XML Data Source Object (DSO)
Dynamic HTML (DHTML) for Dynamic HTML (DHTML) for PresentationPresentation
Download from Download from http://www.microsoft.com/xmlhttp://www.microsoft.com/xml
DemonstrationDemonstration Built by JungleeBuilt by Junglee Searching for used books on Searching for used books on
the Webthe Web Runs on Internet Explorer 4Runs on Internet Explorer 4
Junglee:Junglee:Virtual Database TechnologyVirtual Database Technology
Access the WebAccess the Web
Web Web sitessites
Inte
rnet
Internet andInternet and
EnterpriseEnterprise
ApplicationsApplications HTTPHTTPHTMLHTML
ODBCODBC
XMLXML
As a DatabaseAs a Database
Virtual Database
Inte
rnet
Online RecruitmentOnline Recruitment
OnlineOnline
Job SitesJob Sites
Junglee Job
Canopy
Job ListingsJob Listings
(Corporations(Corporations))
Bank ofBank ofAmericaAmerica
AndersenAndersen
ConsultingConsulting
DellDell
AT&TAT&T
MotorolaMotorola 600+ companiesin the VDB
Wall StreetJournal
CareerMosaic
WashingtonPost
AOL
CareerPath
Inte
rnet
Web CommerceWeb Commerce
Web PortalsWeb Portals
Junglee Shopping
Guide
Product CatalogsProduct Catalogs
Wal-MartWal-Mart
Amazon.comAmazon.com
Barnes&NobleBarnes&Noble
The GapThe Gap
MotorolaMotorola100+ merchants
in the VDB
Yahoo!
Go2Net
.
.
.
.
.
.
Realizing the Web’s Realizing the Web’s Full PotentialFull Potential
The Web’s Full PotentialThe Web’s Full Potential Search for:Search for:
Goods (e.g. Used Books)Goods (e.g. Used Books) Services (e.g. Lawn-mowing)Services (e.g. Lawn-mowing) Information (e.g. Portfolios)Information (e.g. Portfolios)
ApplicationsApplications Sites are applications that help Sites are applications that help
analyze and manage this dataanalyze and manage this data
Challenges to Realize the Challenges to Realize the Web’s Full Potential...Web’s Full Potential...
Find information intelligentlyFind information intelligently Interact with applications on Interact with applications on
servers easily and efficientlyservers easily and efficiently But: physical implementations But: physical implementations
will vary from site to site will vary from site to site
Web Sites RequirementsWeb Sites Requirements Standardize on Standardize on logical viewslogical views, ,
not physical implementationsnot physical implementations Standard description of Standard description of
logical views availablelogical views available More than databases actually More than databases actually
did did Sites can interact with each Sites can interact with each
other and with clients!other and with clients!
Lessons from the WebLessons from the Web Simplicity winsSimplicity wins
Open, Easy, FlexibleOpen, Easy, Flexible Efficiency losesEfficiency loses
Complex, Binary formats, Fixed Complex, Binary formats, Fixed vocabulariesvocabularies
Lessons from ServersLessons from Servers Servers are like grocery storesServers are like grocery stores Good performance requiresGood performance requires
Coarse-grainedCoarse-grained communication communication Limited ability to multitask Limited ability to multitask Queues Queues Interruptible models Interruptible models StandardsStandards
We have learnedWe have learned We need an architecture that We need an architecture that
lets us interact in a coarse-lets us interact in a coarse-grained way through grained way through logical logical viewsviews
As a Web architecture, it must As a Web architecture, it must be easy, open, and flexible to be easy, open, and flexible to build and interact with these build and interact with these logical viewslogical views
XML XML XML is the most fundamental XML is the most fundamental
building blockbuilding block It is the Meta-grammar that It is the Meta-grammar that
allows us to describe allows us to describe anyany data data or state for any logical viewor state for any logical view
It is simple, easy, and openIt is simple, easy, and open It can describe any package of It can describe any package of
information moved to or from information moved to or from the middle-tierthe middle-tier
Application architectureApplication architecture
Storage
Middle-Tier
Client
Transform Data intoXML Logical View
XML &Components
View, Edit &Manage XML
XML is already evolving XML is already evolving to the next levelto the next level
Currently EmergingCurrently Emerging NamespacesNamespaces XML-DataXML-Data XML StoresXML Stores XML ConvertersXML Converters Tools galoreTools galore
Still to come...Still to come...
PresentationPresentation Data isn’t presentationData isn’t presentation Today — Dynamic HTMLToday — Dynamic HTML Tomorrow: Tomorrow:
XML inside DHTML: CSS & XML inside DHTML: CSS & ScriptScript
Extensible Style Language Extensible Style Language (XSL) which will allow the swift (XSL) which will allow the swift transformation of XML to HTML, transformation of XML to HTML, oror XML on client or server XML on client or server
Remember the book Remember the book storestore
Describe the store’s servicesDescribe the store’s services Describe the booksDescribe the books Request specific booksRequest specific books Act as my shopping cartAct as my shopping cart Allow me to buy booksAllow me to buy books
New XML grammarsNew XML grammars SchemaSchema
Logical view shape itself Logical view shape itself Site InformationSite Information
Site/Object/Server shape itselfSite/Object/Server shape itself Filters and UpdatesFilters and Updates
Any request for subsets of dataAny request for subsets of data Any desired set of changes to Any desired set of changes to
datadata
New XML grammarsNew XML grammars Object PersistenceObject Persistence
Describe how to save or Describe how to save or reload the state of any reload the state of any object to/from XML object to/from XML
DHTML
Web Applications ArchitectureWeb Applications ArchitectureApplications: Excel, Word
XML
XML
Objects
Custom Code
Middle-tierApplication
Databaseto XML
XML
Client
Middle-Tier
StorageMainframe Database
What’s missingWhat’s missing Dashed Pink LinesDashed Pink Lines Dashed Red LinesDashed Red Lines Yellow TanksYellow Tanks Blue TrianglesBlue Triangles
RPC RPC Dashed Pink LinesDashed Pink Lines
XML provides a basis for an XML provides a basis for an extremely simple and open extremely simple and open RPCRPC
Can be implemented by Can be implemented by anyone wanting to interact on anyone wanting to interact on the Webthe Web
New XML Grammars New XML Grammars Dashed Red LinesDashed Red Lines
Querying, Updating XML Querying, Updating XML logical viewslogical views
Same need as SQL for Query Same need as SQL for Query and Updateand Update
Stores/Queues Stores/Queues Yellow TanksYellow Tanks
Need to temporarily cache it, Need to temporarily cache it, index it, update the cached index it, update the cached copy, transact it copy, transact it
Also requires a store for Also requires a store for managing itmanaging it
Converters Converters Blue TrianglesBlue Triangles
Between physical Between physical implementations and implementations and XML-based logical viewsXML-based logical views
Special cases required for Special cases required for relational databasesrelational databases
What can be built?What can be built?
Line-of-business applicationsLine-of-business applications PlanningPlanning NotificationNotification Data CaptureData Capture Information searchingInformation searching CollaborationCollaboration
Next StepsNext Steps
Step IStep I Learn XML Learn XML
View, edit, & manage XML View, edit, & manage XML Map XML logical views & Map XML logical views &
databasesdatabases http://www.microsoft.com/xmlhttp://www.microsoft.com/xml
Define grammarsDefine grammars General General e.g.e.g. Schema Schema Industry-specificIndustry-specific
Step IIStep II Build sites that are open Build sites that are open
applicationsapplications As standard XML grammars As standard XML grammars
emerge to describe site emerge to describe site services, support them services, support them
Make them interoperable. For Make them interoperable. For each site each site Publish its shape, its services, Publish its shape, its services,
and most importantly its dataand most importantly its data
Step IIIStep III
As XML grammars emerge for As XML grammars emerge for filtering and updating: filtering and updating: Implement and support themImplement and support them
Engineer your client side Engineer your client side objects to talk XML to servers.objects to talk XML to servers.
SummarySummary We’re only at the We’re only at the veryvery start of start of
the Web revolution. The most the Web revolution. The most exciting part is still to comeexciting part is still to come
With XML, interacting with With XML, interacting with data and applications on the data and applications on the Web will be as easy as viewing Web will be as easy as viewing shared contentshared content
Get started!Get started!
™
http://www.microsoft.com/xml