Extending HTTP to Improve XML Performance CSE 330 Jeffrey R. Ellis
Discussion Topics What? Why? Introduction to HTTP Introduction to XML XML XML Schema XSL Three Extensions to HTTP
What and Why? HTTP Protocol to transport data across network Widely used since 1991 to transport HTML pages XML New language specifications for marking data Successor to HTML?
Goal of Research Combination of HTTP and XML is new and unplanned Goal Analyze the current performance of XML over HTTP Suggest extensions to HTTP to improve performance of XML NO MARRIAGE OF HTTP WITH XML!!
Introduction to HTTP 1991 – HTTP/0.9 Request/Response Works over various lower-level protocols HTML-based messages 1996 – HTTP/1.0 GET/POST methods Character sets Media types
Introduction to HTTP 1999 – HTTP/1.1 Connection-sharing (TCP) Pipelining Caching Current – HTTP Extension Framework Future changes Local customizations
HTTP Example GET /ex/http.html HTTP/ OK Content-Type: text/html Content-Length:
Introduction to XML XML as Language eXtensible Markup Language Tagging structure to differentiate data XML as Platform XML (language) XML Schema XML Stylesheet Language (XSL) XLink, XPath, XPointer, etc. XML enables interchange of data
XML (language) Tagging markup (like HTML) Tags are not predefined (unlike HTML) 12 Scoping This chapter considers......
XML Schema Similar to Document Type Definitions (DTDs) Restrict the allowable tags Can be user-specific or domain-specific
XSL Stylesheet Language Allows visual markup (like CSS) Allows data transformations Transforms type of document...
XML over HTTP Does it work? Implemented in Internet Explorer, Mozilla Does it work well? All pieces are not yet implemented in software Works well so far Are there improvements? Most definitely
Extension 1 – Multi-source Document Retrieval Problem XML documents spread out over locations Connection sharing and pipelining may prevent timely return of source document Links to foreign XML Schema and XSL documents are found late Solution Send hypertext links as part of the HTTP headers Allows clients to retrieve transformation and schema information timely
Extension 2 – Document Language Request Problem HTML is no longer *only* major document language Clients may understand only HTML/XML/PS/text versions of file Extension Allow HTTP header to request particular document format XML can generate format (client request) Reduces duplicate files, URLs
Extension 3 – XMLTP? Problem XML is extensible – no limit in sight Pure XML data transfer may offer benefits over XML-on-HTTP Extension Allow “protocol-escape” from HTTP Response object can signal protocol switch from HTTP to XMLTP or other protocol Permits future development efforts
Conclusions HTTP & XML are exciting technologies Introduction of XML has challenged the HTTP outlook Extensions proposed Hypertext links in headers Selection of document format in headers Protocol-switch feature While not a marriage, these changes in HTTP can benefit XML (and others)