MSXML InDepth Features Current And Future Charlie Heinemann
- Slides: 33
MSXML In-Depth Features: Current And Future Charlie Heinemann Program Manager XML Core Services Microsoft Corporation 9 -326
MSXML in 2000 l What’s available today? MSXML in Windows 2000 l What’s available tomorrow? MSXML 2 in SQL Server 2000 l What’s on the horizon? MSXML 3 on the Web
MSXML in Windows 2000 l l l l l XML 1. 0 Namespace 1. 0 DOM 1. 0 (Document Object Model) Schema (Validation) XSL (Transformations) XSL Pattern (Querying) XMLHTTP (Posting and Getting XML) XML Data Source Object IE 5 XML Support
MSXML in Production l Microsoft. com Ø Ø Ø Document Management Document Interchange 200, 000 – 2 million hits/day
MSXML 2: Performance l l Advanced XML Interfaces In-line Schemas General Performance Enhancements Improved Scalability
Advanced XML API’s l XSL Interfaces Ø Ø l l XSLTemplate Interface XSLProcessor Interface DOMSelection Interface Schema. Collection Interface
XSL Interfaces l l l Passing parameters to stylesheets Passing objects to stylesheets Caching stylesheets
Demo Part 1 l l l XSLT Transform Passing Parameters Passing Objects
XSL Interfaces: Passing Parameters xslprocessor. add. Parameter(“color”, “red”). . . <xsl: param name=“color”/> <xsl: template name=“Body. Template”> <tr style="color: {$color}"> … </tr> </xsl: template>
XSL Interfaces: Passing Objects my. Obj. number. Value =. 15 xslproc. add. Object(my. Obj, "urn: my-percent-object") … <xsl: stylesheet xmlns: per. Obj=“urn: my-percent-object” …> <xsl: template match="price"> <xsl: value-of select=". "/> @ <xsl: value-of select="per. Obj: get-percent()"/> discount </xsl: template>
DOMSelection Interface l Querying the DOM using Xpath xmldoc. set. Property(“Selection. Language”, “XPath”) domsel = xmldoc. select. Nodes(“//child: : *”) l Returns an DOMSelection Object Inherits from IXMLDOMNode. List Ø Added functionality for managing result sets returned from a query Ø l Caching queries Compile the XPath expression once Ø Programmatically set multiple contexts Ø
Schema. Collection Interface l l l Caching schemas to improve performance Validating XML against external schemas Validating XML at run-time
Demo Part 2 l l l In-line Schema Support Validating against external schemas Re-applying the schema cache
In-Line Schema Support <root xmlns: foo=“x-schema: #my. Schema”> <Schema name=“my. Schema” xmlns=“urn: schemas-microsoft-com: xmldata”> <Element. Type name=“bar”/> </Schema> <foo: bar>Hello World</foo: bar> </root>
Schema. Collection Interface: Creating a Schema Cache cache = new Active. XObject(“MSXML 2. XMLSchema. Cache"); cache. add("my. Foo. URI", "http: //server/xmldataschema 1. xml"); cache. add("uri 3", my. Dom. Document); xmldoc. schemas = cache; xmdoc. load("http: //myserver/mydata. xml");
Schema. Collection Interface: Applying the Schema Cache cache. add(“urn: book-ns”, schema. Doc) xmldoc. schemas = cache xmldoc. load(“xmlfile. xml”) new. Node = xmldoc. create. Element(“pub”) doc. El = xmldoc. document. Element doc. El. append. Child(new. Node) xmldoc. validate()
General Performance Enhancements l XSLT Transformations Ø l l l Up to 3 x Improvement over MSXML Querying the DOM Walking the DOM Plug in MSXML 2 and improve performance of old scenarios
Improved Scalability l l l 100% increase in scaling Greatest increase in 4+ procs See http: //msdn. microsoft. com/xml/articles/ xml 03202000. asp for numbers and scenarios
MSXML 3: Standards l l Full XSLT Support Full XPath Support SAX (Simple API for XML) Finishing touches on XML 1. 0
XSLT/XPath Support l XSLT Ø Ø l Full compliance Script Blocks XPath Ø Ø Full compliance Select. Nodes Support
Demo Part 3 l l XPath Querying XPath support in the DOM select. Nodes
SAX 2 l Low-level Parser Interfaces Ø Ø l Event-driven parser Parsing w/o building a DOM tree Needed for messaging and other highthroughput scenarios Needed for processing large documents Currently available for C++ programmers - VB interfaces coming soon
Demo Part 4 l l SAXXMLReader SAX in VB
Event-driven Parser Private Sub ISAXContent. Handler_Start. Element( Namespace. URI, Local. Name, Raw. Name, Attributes) If Local. Name = “Book” Then Debug. Print "Book Data Present" End If End Sub
Full XML 1. 0 Compliance l l Put the finishing touches on 1. 0 compliance Full Namespace 1. 0 compliance
Advanced XMLDSO Support l l l Better integration with ADO Binding Flat XML to Controls using ADO 2. 5 Binding Complex XML to Hierarchical Controls using ADO 2. 6
Demo Part 5 l l XML Data Source Object Displaying XML in Excel
Binding XML to Grid Controls CN. Provider = “MSDAOSP” CN. Properties(“Data. Source”) = “MSXML 2. DSOControl” CN. Open RS. Open “http: //server/simple. xml”, CN Set Data. Grid 1. Data. Source = RS
Conclusion l l l MSXML in Production Now MSXML 2 – new Performanceenhancing XML API’s, additional schema work, general performance improvements MSXML 3 – Standards Release: Full XSLT and XPath support, SAX 2, Full XML 1. 0 Compliance XML
Resources and Services l XML Developer Center http: //msdn. microsoft. com/xml l SOAP Toolkit http: //msdn. microsoft. com/xml/general/ toolkit_intro. asp l SQL Server 2000 Beta http: //www. microsoft. com/SQL/productinfo/ sql 2 kord. htm l Biztalk Server 2000 Technical Preview http: //www. microsoft. com/biztalkserver/ techres/techpreview. asp
Call to Action l l l Download the latest MSXML release (MSXML 3) Visit the XML Developer Center and check out the new materials there Start prototyping and developing applications using XML technologies
- Msxml xpath
- Msxml 2
- Indepth reading
- Indepth data
- Future perfect future continuous
- Future perfect simple and future continuous exercises
- Heinemann and me
- Amy heinemann
- Todd becker myopia
- Heinemann mobbing
- Dirk heinemann krankheit
- Gustav-heinemann-realschule plus und fachoberschule alzey
- Frank heinemann tu berlin
- Heinemann duty free salzburg
- Future trends of media and information
- Line currents
- Line vs phase voltage
- Drift current and diffusion current
- Ac systems lesson 4
- Drift current and diffusion current
- Drift current and diffusion current in semiconductor
- In a y-connected source feeding a ∆-connected load,
- Infineon
- Diffusion current formula
- Current and future issues in corrections
- Q point
- Amperage can be described as
- Hazard based safety engineering
- Non planar circuit
- Future perfect and future continuous examples
- Tense chart in english
- Future plans and finished future actions
- Future perfect x
- Kondicional 1 engleski