- From: Erik Dahlström <ed@opera.com>
- Date: Tue, 18 Jul 2006 18:00:11 +0200
- To: www-svg@w3.org
Boris wrote: > Dear SVG Working Group, > It seems to me that the parseXML method on the SVGGlobal interface [1] is > somewhat underdefined. The WG agrees and the section on parseXML has been updated: "parseXML Given a string and a Document object, parse the string as an XML document and return a Node representing it. If the XML in the string is not well-formed according to either XML 1.0 or XML 1.1 or not namespace-well-formed according to Namespaces in XML 1.0 or Namespaces in XML 1.1 respectively, this method must return a null value. When parsing the input string, the contextDoc parameter is used only for setting the ownerDocument field in the parsed nodes. If during parsing a 'script' element is encountered, it must not be executed at that time. Script execution is deferred until the returned Document (or applicable parts thereof) is inserted into the contextDoc document. There is no requirement to load any external resources, e.g. external entities, stylesheets, scripts, raster images, video, audio etc, for the parsing to complete. XSL stylesheets must not be applied. If the contextDoc parameter is defined, this method returns an Element object the ownerDocument field of which must be set to be the provided Document object. In effect when the contextDoc parameter is specified the processing must be equivalent to applying the following steps: 1. parsing the XML into a Document 2. retrieving its documentElement element 3. calling importNode on the Document object passed to parseXML with the Element from the previous step as its first parameter and the deep parameter set to true. (Please note that importNode is part of DOM 3 Core but not of the uDOM. It is mentioned here to indicate that the effect must be as if importNode had been used, but not to require that it be supported in implementations) 4. return the result of the last step Parameters in DOMString data The data that is to be parsed as XML. in Document contextDoc The Document object in the context of which to perform the parsing. Return value Node A Node (either a Document or an Element) representing the content that was parsed. Exceptions DOMException NOT_SUPPORTED_ERR: Raised if the type of node being imported is not supported. DOMException INVALID_CHARACTER_ERR: Raised if one of the imported names is not an XML name according to the XML version in use specified in the Document.xmlVersion attribute. This may happen when importing an XML 1.1 [XML 1.1] element into an XML 1.0 document, for instance." So to answer your questions: > 1) Are scripts executed if an <svg:script> tag is parsed? No. > 2) Are scripts executed if an <xhtml:script> tag is parsed? No. > 3) If the answer to question #1 or #2 is "yes", what global object > do they use? What security context? Does this depend on whether > a contextDoc was passed in? Since the answer was 'no' on #1 and #2 that implies #3 is answered too. > 4) Are stylesheets loaded if an appropriate XML Processing Instruction > is parsed? I'm including both CSS and XSLT stylesheets here. > 5) Are stylesheets loaded if an <svg:style> element is parsed? > 6) Are images loaded if an <svg:image> or <html:image> is parsed? > 7) Are subdocuments loaded if an <html:iframe> or equivalent is parsed? No, there is no requirement to do so. This is not to say it's forbidden to preload these resources, but they shouldn't be applied (in the case of CSS and XSLT). > 8) Do the answers to questions 4-7 depend on whether a contextDoc was passed in? No. > If the Working Group is interested, I can try to describe what the > equivalentsin Mozilla (DOMParser() and so forth) do as regards the > questions above (thoughI should note that some of the behavior there is > also underdefined and possiblysubject to change). The WG would be happy to consider your proposed wording for a later revision of the specification. Thank you /Erik, on behalf of the SVG WG -- Using Opera's revolutionary e-mail client: http://www.opera.com/mail/
Received on Tuesday, 18 July 2006 16:00:26 UTC