- From: Boris Zbarsky <bzbarsky@MIT.EDU>
- Date: Sun, 02 Feb 2003 16:41:15 -0600
- To: "Philip TAYLOR [PC336/H-XP]" <P.Taylor@Rhul.Ac.Uk>
- CC: www-html@w3.org
Philip TAYLOR [PC336/H-XP] wrote: > How can one tell that the parameter to the object tag is trying > to invoke an Active-X object ? See the text at http://www.w3.org/TR/html401/struct/objects.html#adef-classid -- the "classid" attribute points to a particular implementation of something that can handle the data. It could be an http:// uri to a plugin binary or anything else one wishes, if I read the spec correctly (the informative examples use a "java:" uri for Java applets and a "clsid:" uri for ActiveX objects). The problems only start, imo, when the URI used in this attribute is not usefully standardized. So the real question is "what does the 'clsid' protocol scheme mean?" Thus far, the only uses of this protocol scheme of which I'm aware are to identify ActiveX objects by their uuids. I do not know whether there is any actual documentation as to this fact. If you do, I would dearly like to know. > If not, what is to prevent > a browser from applying its own (totally idiosyncratic) > interpretation to the parameter and interpreting it as > anything that it chooses ? Nothing. In fact, the whole <object> element is not usefully specified in such a way as to be interoperable across multiple platforms and browser implementations. It seems to be meant as a generic extension mechanism (which is fine), and does not specify a way of determining when two extensions would be "equivalent". Thus, if you have an <object> that requires a "clsid:FOO" to render it (as defined by the classid attribute), a browser has a few choices: 1) Decide that "clsid:" means "ActiveX Object" (in practice this is the case in every case that I have seen) and a) Render using that ActiveX object or b) Not have the ActiveX object (or ActiveX at all) available and render the alternate markup. or 2) Decide that "clsid:" means "unique identifier in some other naming scheme" and a) Use that to find an acceptable implementation and try to use it (chances are this would break on any current page using "clsid:") b) Decide it does not know what to do with it and render the alternate markup Boris
Received on Sunday, 2 February 2003 17:41:21 UTC