Presentation is loading. Please wait.

Presentation is loading. Please wait.

MSXML In-Depth Features: Current And Future Charlie Heinemann Program Manager XML Core Services Microsoft Corporation 9-326.

Similar presentations


Presentation on theme: "MSXML In-Depth Features: Current And Future Charlie Heinemann Program Manager XML Core Services Microsoft Corporation 9-326."— Presentation transcript:

1 MSXML In-Depth Features: Current And Future Charlie Heinemann Program Manager XML Core Services Microsoft Corporation 9-326

2

3 MSXML in 2000 What’s available today? What’s available today? What’s available tomorrow? What’s available tomorrow? What’s on the horizon? What’s on the horizon? MSXML in Windows 2000 MSXML2 in SQL Server 2000 MSXML3 on the Web

4 MSXML in Windows 2000 XML 1.0 XML 1.0 Namespace 1.0 Namespace 1.0 DOM 1.0 (Document Object Model) DOM 1.0 (Document Object Model) Schema (Validation) Schema (Validation) XSL (Transformations) XSL (Transformations) XSL Pattern (Querying) XSL Pattern (Querying) XMLHTTP (Posting and Getting XML) XMLHTTP (Posting and Getting XML) XML Data Source Object XML Data Source Object IE 5 XML Support IE 5 XML Support

5 MSXML in Production Microsoft.com Microsoft.com  Document Management  Document Interchange  200,000 – 2 million hits/day

6 MSXML2: Performance Advanced XML Interfaces Advanced XML Interfaces In-line Schemas In-line Schemas General Performance Enhancements General Performance Enhancements Improved Scalability Improved Scalability

7 Advanced XML API’s XSL Interfaces XSL Interfaces  XSLTemplate Interface  XSLProcessor Interface DOMSelection Interface DOMSelection Interface SchemaCollection Interface SchemaCollection Interface

8 XSL Interfaces Passing parameters to stylesheets Passing parameters to stylesheets Passing objects to stylesheets Passing objects to stylesheets Caching stylesheets Caching stylesheets

9 Demo Part 1 XSLT Transform XSLT Transform Passing Parameters Passing Parameters Passing Objects Passing Objects

10 XSL Interfaces: Passing Parameters xslprocessor.addParameter(“color”, “red”)... …

11 XSL Interfaces: Passing Objects myObj.numberValue =.15 xslproc.addObject(myObj, "urn:my-percent-object") "urn:my-percent-object")… discount

12 DOMSelection Interface Querying the DOM using Xpath Querying the DOM using Xpath xmldoc.setProperty(“SelectionLanguage”, “XPath”) domsel = xmldoc.selectNodes(“//child::*”) Returns an DOMSelection Object Returns an DOMSelection Object  Inherits from IXMLDOMNodeList  Added functionality for managing result sets returned from a query Caching queries Caching queries  Compile the XPath expression once  Programmatically set multiple contexts

13 SchemaCollection Interface Caching schemas to improve performance Caching schemas to improve performance Validating XML against external schemas Validating XML against external schemas Validating XML at run-time Validating XML at run-time

14 Demo Part 2 In-line Schema Support In-line Schema Support Validating against external schemas Validating against external schemas Re-applying the schema cache Re-applying the schema cache

15 In-Line Schema Support Hello World Hello World

16 SchemaCollection Interface: Creating a Schema Cache cache = new ActiveXObject(“MSXML2.XMLSchemaCache"); cache.add("myFooURI", "http://server/xmldataschema1.xml"); "http://server/xmldataschema1.xml"); cache.add("uri3", myDomDocument); xmldoc.schemas = cache; xmdoc.load("http://myserver/mydata.xml");

17 SchemaCollection Interface: Applying the Schema Cache cache.add(“urn:book-ns”, schemaDoc) xmldoc.schemas = cache xmldoc.load(“xmlfile.xml”) newNode = xmldoc.createElement(“pub”) docEl = xmldoc.documentElement docEl.appendChild(newNode)xmldoc.validate()

18 General Performance Enhancements XSLT Transformations XSLT Transformations  Up to 3x Improvement over MSXML Querying the DOM Querying the DOM Walking the DOM Walking the DOM Plug in MSXML2 and improve performance of old scenarios Plug in MSXML2 and improve performance of old scenarios

19 Improved Scalability 100% increase in scaling 100% increase in scaling Greatest increase in 4+ procs Greatest increase in 4+ procs See xml asp See xml asp for numbers and scenarios

20 MSXML3: Standards Full XSLT Support Full XSLT Support Full XPath Support Full XPath Support SAX (Simple API for XML) SAX (Simple API for XML) Finishing touches on XML 1.0 Finishing touches on XML 1.0

21 XSLT/XPath Support XSLT XSLT  Full compliance  Script Blocks XPath XPath  Full compliance  SelectNodes Support

22 Demo Part 3 XPath Querying XPath Querying XPath support in the DOM - selectNodes XPath support in the DOM - selectNodes

23 SAX2 Low-level Parser Interfaces Low-level Parser Interfaces  Event-driven parser  Parsing w/o building a DOM tree  Needed for messaging and other high- throughput scenarios  Needed for processing large documents Currently available for C++ programmers - VB interfaces coming soon Currently available for C++ programmers - VB interfaces coming soon

24 Demo Part 4 SAXXMLReader SAXXMLReader SAX in VB SAX in VB

25 Event-driven Parser Private Sub ISAXContentHandler_StartElement( NamespaceURI, LocalName, RawName, Attributes) If LocalName = “Book” Then Debug.Print "Book Data Present" Debug.Print "Book Data Present" End If End Sub

26 Full XML 1.0 Compliance Put the finishing touches on 1.0 compliance Put the finishing touches on 1.0 compliance Full Namespace 1.0 compliance Full Namespace 1.0 compliance

27 Advanced XMLDSO Support Better integration with ADO Better integration with ADO Binding Flat XML to Controls using ADO 2.5 Binding Flat XML to Controls using ADO 2.5 Binding Complex XML to Hierarchical Controls using ADO 2.6 Binding Complex XML to Hierarchical Controls using ADO 2.6

28 Demo Part 5 XML Data Source Object XML Data Source Object Displaying XML in Excel Displaying XML in Excel

29 Binding XML to Grid Controls CN.Provider = “MSDAOSP” CN.Properties(“DataSource”) = “MSXML2.DSOControl” CN.Open RS.Open “http://server/simple.xml”, CN Set DataGrid1.DataSource = RS

30 XML Conclusion MSXML in Production Now MSXML in Production Now MSXML2 – new Performance- enhancing XML API’s, additional schema work, general performance improvements MSXML2 – new Performance- enhancing XML API’s, additional schema work, general performance improvements MSXML3 – Standards Release: Full XSLT and XPath support, SAX2, Full XML 1.0 Compliance MSXML3 – Standards Release: Full XSLT and XPath support, SAX2, Full XML 1.0 Compliance

31 Resources and Services XML Developer Center XML Developer Centerhttp://msdn.microsoft.com/xml SOAP Toolkit SOAP Toolkithttp://msdn.microsoft.com/xml/general/toolkit_intro.asp SQL Server 2000 Beta SQL Server 2000 Betahttp://www.microsoft.com/SQL/productinfo/sql2kord.htm Biztalk Server 2000 Technical Preview Biztalk Server 2000 Technical Previewhttp://www.microsoft.com/biztalkserver/techres/techpreview.asp

32 Call to Action Download the latest MSXML release (MSXML3) Download the latest MSXML release (MSXML3) Visit the XML Developer Center and check out the new materials there Visit the XML Developer Center and check out the new materials there Start prototyping and developing applications using XML technologies Start prototyping and developing applications using XML technologies

33


Download ppt "MSXML In-Depth Features: Current And Future Charlie Heinemann Program Manager XML Core Services Microsoft Corporation 9-326."

Similar presentations


Ads by Google