170 likes | 248 Views
Florida Atlantic University Department of Computer Science & Engineering. COP 4814 – Web Services Dr. Roy Levow Part 4 - XML. Fall 2006. XML support generally limited to IE and Firefox XML in IE Microsoft.XmlDom in IE4.0 MSXML ActiveX in IE 5.0+ But only on Windows; not on MAC
E N D
Florida Atlantic UniversityDepartment of Computer Science & Engineering COP 4814 – Web Services Dr. Roy Levow Part 4 - XML Fall 2006
XML support generally limited to IE and Firefox XML in IE Microsoft.XmlDom in IE4.0 MSXML ActiveX in IE 5.0+ But only on Windows; not on MAC Text uses createDocument() for cross-IE compatability XML DOM object created from string XML, XPath, XSLT
DOM object properties childNodes, firstChild, lastChild, parentNode, nextSibling, previousSibling, nodeName, nodeType, nodeValue text, attributes xml ownerDocument – root node Navigate tree with these functions XML DOM Navigation
Examples: IE DOM DOM creation Get Elements by Tag Name Create Node Insert Node Remove Child Replace Child IE XML DOM Navigation Examples
Creates and propagates exception object parseError parseError object provides details errorCode, reason filePos, line, linePos srcText url IE XML DOM Error Handling
Uses createDocument() method to generate DOM object Empty From string From url load() method loads from a url String version of XML subtree is produced by XMLSerializer object XML DOM in Firefox
Error handling Firefox produces an error document Not the error object of IE It can be parsed to get the same information XML DOM in Firefox - 2
Examples: Firefox DOM DOM Dreation DOM Parser Get text Serialize Error handling Firefox XML DOM - 3
Requires library to create standard calls for operations Text provides zXml library zXmlDom.createDocument() Examples: Cross-Browser DOM Processing Book List Cross-Browser XML
XML uses namespace concept to resolve naming conflicts between documents from different sources Tag name has form ns:tagName Declared as xmlsn:ns-prefix=“nsURI” URI has same syntax as URL but need not be real address Should be unique Declarations in root tag of document XML Namespaces
XPath expressions Context node is partial path from which selection begins book/author – this parent-child sequence Selection pattern specifies which nodes to include book[@isbn=‘0010001001’] Expressions have own syntax and can be quite complex XPath
IE uses two functions selectSingleNode() selectNodes() Examples: IE XPath Firefox uses two objects XPathEvaluator XPathResult Examples: Firefox XPath XPath in IE and Firefox
Use zXml library Same functions as IE Examples: Cross-Browser XPath Cross-Browser XPath
Transformation is done with xsl:stylesheet with XML specific elements xsl:template to select XMLnodes to process xsl:variable to select attributes from nodes Examples: XSLT XSL Transformations
Browser becomes an issue when DOM is used in conjunction with XSLT Must create ActiveX XSLTemplate object Create processor object from template object transform() method does transformation Result is output property of processor Examples: XSLT in IE XSLT in IE
Requires library Text provides this in zXml Syntax similar to Firefox Example: Best Picks Revisited Cross-Browser XSLT
First load XML and XSL into DOM objects Create XSLTProcessor Import XSL stylesheet Transform XmlDOM document or fragment Examples: XSL in Firefox XSLT in Firefox