W3C home > Mailing lists > Public > www-svg@w3.org > August 2006

Re: [SVGMobile12] Resolution of issue SVGT12-487 not satisfactory

From: Sjoerd Visscher <sjoerd@w3future.com>
Date: Sun, 13 Aug 2006 17:09:42 +0200
Message-ID: <44DF40B6.4040104@w3future.com>
To: www-svg@w3.org

It looks like this whole discussion is based on a misunderstanding of 
the WebCGM spec [1]. The WebCGM spec and the de-facto HTML standard are 
not incompatible.

Especially the clarification given by Chris Lilley in [2] is not how I 
think the WebCGM spec should be read. If Chris had been right, then 
there would have been no reason for the WebCGM spec to say that _replace 
only applies to CGM-to-CGM, as it would have been very useful for a CGM 
file loaded in an iframe.

_replace is used in WebCGM for images that are loaded in HTML with the 
img element. In CGM-to-CGM, the link target would be set as the src 
attribute of the img element. And as HTML is not allowed as image 
format, _replace is not applicable to CGM-to-HTML.

The problem of reading the WebCGM spec lies in the fact that is 
undefined what creates a frame. There is no doubt that html frame 
elements create frames. An iframe does so too (as the name implies).

There only remains one problem, the object tag. Does it create a frame?

I did some test, by loading an image, an html document and an svg 
document in an object element. Internet Explorer always creates a frame. 
Firefox does not create a frame for an image, but does so for html and 
svg. Opera creates a frame for html, but not for images or svg. 
(Although I'm not so sure about SVG, as Opera does not seem to create a 
frame for an SVG file in an Iframe either.)

This explains why Boris Zbarsky was confused by the meaning of _replace, 
because Firefox always creates a frame for svg content, so _replace 
never applies and always means the same as _self.

There is one other thing: if the HTML elements and the SVG elements are 
in the same document, and the link points to another SVG document, then 
_replace could mean that the root SVG element is replaced *in the DOM* 
by the documentElement of the targeted SVG document. (A kind of XInclude 
operation.) This probably creates more problems than it solves and 
_replace should in this case do the same as _self.

[1] http://www.w3.org/TR/REC-WebCGM/REC-03-CGM-IC.html#webcgm_3_1_2_2
[2] http://lists.w3.org/Archives/Public/www-svg/2006Jul/0031.html

-- 
Sjoerd Visscher
http://w3future.com/weblog/
Received on Sunday, 13 August 2006 15:09:50 GMT

This archive was generated by hypermail 2.3.1 : Friday, 8 March 2013 15:54:35 GMT