First part

WAW - Add Multimedia in Web Documents Part 2

In the first part of this document, we reviewed the early history of the inclusion of multimedia in Hypertext documents. Let us now see in more details how to use the most mature effort in this regard, the object element.

A versatile and complete inclusion mechanism

The object element is a good answer to the early problems of multimedia in HTML:

The object element is a generic mechanism giving more flexibility than all previous elements. XHTML 2.0 WD has kept this element in a specific module.

Implementation of the object element

The question for this WasP asks W3C is how to include multimedia in Web pages in a backward compatible way. The term “backward compatible”, used here, is rather vague and could be misleading.

Backward compatibility is not a matter of document authoring. A technology can be backward compatible if new version of the technology is completely inclusive of the previous version technology. Imagine you have russian dolls and the smallest one is the oldest version of the technology. Every features of the previous feature are available in the new one. Beyond that, "backward compatibility" is little more than a useful buzzword for a badly understood concept.

The above is all there is to know about multimedia in hypertext and backward compatibility. The real question, however, is how to do multimedia inclusion in a way that will work with every existing browsers.

Testing the Browsers for object element

Test Reporting Template

We created a few test to help you to test the level of implementation of the object element in each user agent. You are welcome to report the results to the www-archive@w3.org mailing list (publicly archived) with the topic “[object] Test Report - (User Agent Name and version)”. When reporting implementation results, be sure to give all the requested information. Without this information the test will be useless. You might want to use the following template:

Date: 
OS Version: (Name and version)
User Agent: (Name and version)

Test URI: 
Result: Y, N, B
Comments: 

It is very important to give reasons in the comments section, specifically when the test has failed or is considered buggy.

List of Tests

HTML 4.01 Official Test Suite

HTML 4.01 QA Test Suite

Test Report

We give here a short test report for some user agents and some platforms. This test report is not complete and doesn't cover all the possible case. It might contain errors depending on the interpretation of the reviewers. We will collect the test results for HTML object implementation.

Implementation Table for object Element
UA1 UA2
classid and codetype attribute N N
Invalid data attribute - Fallback Mechanism Y N
Intrinsic size Y N
Resizing an object element with pixels Y Y
Resizing an object element with percentage Y Y
Including a text with object Y Y
Including a piece of program with object N Y
Including a piece of html source code with object Y N
"data:" scheme in data attribute Y Y
UA1 = Mozilla/5.0 (Macintosh; U; PPC Mac OS X Mach-O; en-US; rv:1.7.5) Gecko/20041107
UA2 = Safari 1.2.4 (v125.12)

Conclusion

As we have just seen, backward compatibility is hardly relevant to the issue of multimedia inclusion. The relevant question is how well the different techniques attached to the different versions (DTD) of HTML are supported by the browsers, and /based on that knowledge/, which DTD and associated technique should be chosen.

There is not a single best option, but we recommend to:

  1. Choose a DTD, strict if possible. (because of tools available, because of browsers supporting it, because of the integration with regards to other tools you are using.)
  2. When the DTD is chosen, use the tags that are available, avoiding the one which are deprecated
  3. If you decide to change your DTD, you'll have to adapt your document to the new one. Sometimes a simple XSLT is enough, specifically if you are using an XML language.

The Test results show that the implementation of object element in modern browsers has been improved but is not yet perfect. The object element is part of XHTML 2.0 WD specification. The rules of specifications creation are stricter than in the past, and the implementations of the object element will certainly benefit of this.

We invite you to test yourself with your platform of choice and to report on the mailing-list. It will help evangelization groups to request better implementations to user agents vendors.


Valid XHTML 1.0!
Created Date: 2004-02-19 by Karl Dubost
Last modified $Date: 2005/03/23 23:15:42 $ by $Author: kdubost $

Copyright © 2000-2003 W3C® (MIT, ERCIM, Keio), All Rights Reserved. W3C liability, trademark, document use and software licensing rules apply. Your interactions with this site are in accordance with our public and Member privacy statements.