W3C home > Mailing lists > Public > www-html@w3.org > July 2004

Re: Object Element (was: Re: Why the "Embedding" attribute set? Why not just use "object"?)

From: Lachlan Hunt <lachlan.hunt@iinet.net.au>
Date: Mon, 26 Jul 2004 22:13:18 +1000
Message-ID: <4104F55E.1080402@iinet.net.au>
Cc: www-html@w3.org

Masayasu Ishikawa wrote:
> Note that there's no data attribute on object anymore, the latter
> example should be:
> 
>     <h><object src="/images/heading"
>     type="image/png,image/gif">Heading</object></h>

Oh, I hadn't got that far through the new draft yet, I just remembered 
from the old one and didn't bother looking it up.  Perhaps I should have 
:), thanks for pointing it out.  That definately makes a lot more sense 
than having two attributes for the same purpose.


*Object Specific Attributes and Param*

Is there any reason why the remaining attributes for object (archive, 
content-length and declare) have not been included in the embedding 
attribute collection?

It seems that <object> has no more semantics than <div> does, so why not 
just allow them on all elements, like src and type are?  And, is there 
any reason why <param/> cannot be included in any element as well.  They 
could just be defined to be ignored on any element that does contain a 
src attribute, and is thus not an object.


*Recursive Object Embedding*

The specification should state how user agents are to handle recursive 
embedding of objects.

eg. test.xhtml contains:
<object type="application/xhtml+xml" src="test.xhtml">
     ...
</object>

In this case, test.xhtml is recursively embedded within itself.  I 
tested this in Mozilla, Firefox, Opera and IE.

* Mozilla/Firefox
   * Ceased recursing after the second include
   * Displayed alternate content

* Opera
   * Would not even include it once
   * Displayed the alternate content

* IE
   * Recusively included the file until it crashed.
   * /Typical IE behvior!/ :-)

This example can be extended by saying that objectA embeds objectB 
which, in turn, embeds objectA again.  Mozilla and Opera both handle 
this situation well, yet IE still explodes as expected.


*Alternate Content with Nested Objects*

The current draft states in the middle of section 21.1.3 [1]:

   “If an author includes alternate text and an embedded object
    at the same level (this is not the recommended method), the
    object handler should attempt to process the embedded object
    first. If the nested object cannot be processed, then the
    alternate text should be displayed.”

This does not make sense.  For example:

<object type="video/mpeg" src="TheEarth.mpg">
     <!-- paragraph 1 -->
     <p>The planet earth is located in the Milky Way galaxy, orbiting
        around a star known as the sun.</p>

     <object type="image/png" src="TheEarth.png">

         <!-- paragraph 2 -->
         <p>The earth is approximately 8 light minutes away from the sun
            and orbit's in a clockwise direction.</p>

     </object>

     <!-- paragraph 3 -->
     <p>The earth takes approximately 365.25 days to complete one
        revolution.</p>
</object>

In this example, paragraph 1 and 3 provide additional commentary that is 
not indicated by the image but is included in the movie, so they should 
be displayed at the same time as the image, and not only when the image 
is unavalable.

In the event that the image is also not supported, then paragraph 2 
should be rendered together with paragraph 1 and 3.  This seems contrary 
to the definition given in the draft (quoted above), but is (in this 
case) the desired behaviour.  There *may* be some situations where this 
is not the desired be behaviour but if necessary, it could possibly be 
handled with stylesheets.


*xml:base on <param>*

Should <param> support the xml:base attribute, which can be used to 
resolve relative URIs passed as parameters, or is it just expected that 
all relative URIs will be relative to an ancestors xml:base attribute, 
or to the document location; or should it just be handled appropriatey 
by the helper application, unaffected by any xml:base attributes?


   Finally, In the next version, could you please include more IDs (or 
make each section shorter) so, for example, I could have linked 
directly, or at least closer to all the specific points within section 
21.1.3 that I discussed above.

[1] http://www.w3.org/TR/xhtml2/mod-object.html#sec_21.1.3.
[2] 
http://www.w3.org/TR/xhtml2/mod-hyperAttributes.html#adef_hyperAttributes_xml:base
[3] 
http://www.w3.org/TR/xhtml2/mod-hyperAttributes.html#adef_hyperAttributes_xml:base
[4] http://www.w3.org/TR/xhtml2/mod-object.html#sec_21.2.1.
-- 
Lachlan Hunt

http://www.lachy.id.au/
lachlan.hunt@lachy.id.au
Received on Monday, 26 July 2004 08:13:44 GMT

This archive was generated by hypermail 2.2.0+W3C-0.50 : Tuesday, 27 March 2012 18:16:00 GMT