[Home] [Prev] [Next]


HTML DTD Extensions

This page includes DTD definitions for the new HTML markup extensions proposed by Interactive HTML.

<LINK> Tag Extensions

The <LINK> tag has been extended to allow the linking of program modules to documents, along with some basic version control. There are two new types of links: CLASS=module references an external program package to incorporate into the browser, while CLASS=program references a program which will be executed as the "main" interface to the document and executed while the browser is first setting up the document, before it is displayed. The extended <LINK> tag is defined as:

    <!ELEMENT LINK - O EMPTY>
    <!ATTLIST LINK
            standard CDATA #IMPLIED  -- standard module name --
            version NUMBER #IMPLIED  -- minimum module version --
            symbol CDATA #IMPLIED    -- program symbol to access --
            href %URI; #IMPLIED      -- URI from which to retrieve --
            %linkExtraAttributes;
            >
STANDARD
The standard name of the module. Standard modules may exist locally at the browser (or even be built directly into the browser); if the local version does not exist or has a version less than VERSION, this module will instead be retrieved remotely from SRC. If this is not an official standard module, this attribute must not be supplied. All standard modules include the usually extension, to indicate the desired language. For example, a theoretical module written in Python which allows the user to interact with a map may have the name "mapobject.python". (Note that this module may just be a Python language wrapper around a module which is actually written in C or some other low-level language.)
VERSION
Minimum version level needed of a standard module. Only needed if a standard module STANDARD has been requested.
SYMBOL
Language-dependent. Typically the symbol name with which to hook the retrieved module into the script's main symbol table. The Python implementation requires that this attribute be defined for it to install a module.
HREF
A URL from which to retrieve a module. If STANDARD is not specified, this module will always be retrieved from here when loading the document; otherwise, it will only be retrieved when the browser can not resolve the supplied standard module name. Note that, unlike the current <LINK> definition, this attribute is no longer required.

<FIG> Tag Extensions and New <PARAM> Tag

The <FIG> tag has been extended to allow the embedding of interactive objects which are implemented in the browser-side scripting language. The tag is defined, excluding unchanged attributes from the HTML 3.0 specifiction, as:

    <!ELEMENT FIG - - (OVERLAY*, CAPTION?, FIGTEXT, CREDIT?, PARAM*) -(FIG|IMG)>
    <!ATTLIST FIG
            src  %URI;  #REQUIRED    -- URI of program object to embed --
            imagemap (%URI) #IMPLIED -- not valid with embedded programs --
            standard CDATA #IMPLIED  -- standard object name --
            version NUMBER #IMPLIED  -- minimum object version --
            symbol CDATA #IMPLIED    -- program symbol to access --
            >

    <!ELEMENT PARAM - O EMPTY>
    <!ATTLIST PARAM
            tag CDATA #REQUIRED      -- tag (name) of parameter --
	    value CDATA #IMPLIED     -- value of parameter --
            >
STANDARD
Very similar to the like-named <LINK> attribute, this identifies a standard module to embed. VERSION and SRC interact with it identically to their definition in the <LINK> tag.
VERSION
Minimum version of standard module to embed.
SYMBOL
Name of symbol to make object available to main program. The exact function of this attribute is language-dependant; it is typically not required.
SRC
URL from which to retrieve the program object. This attribute is overloaded with the already used SRC attribute in the FIG tag; when the browser retrieves the figure given by this tag, it handles it as an Interactive HTML object rather than a standard image if the type returned by HTTP identifies it as such. An object is thus essentially just another type of data which the FIG element can display.

(The current version of iHTML is using <EMBED> instead of <FIG> to embed objects. The exact tag which is ultimately used will depend on the direction the HTML Working Group goes in.)


[Home] [Prev] [Next]

_________.oo_Q_Q_oo.____________________________________________
Dianne Kyra Hackborn <hackbod@angryredplanet.com>
Last modified: Wed Aug 14 16:06:11 PDT 1996

This web page and all material contained herein is Copyright (c) 1997 Dianne Hackborn, unless otherwise noted. All rights reserved.