Инициализация объекта: элемент PARAM

<!ELEMENT PARAM - O EMPTY -- значение именованного свойства -->

<!ATTLIST PARAM

id ID #IMPLIED -- идентификатор в пределах

документа --

name CDATA #REQUIRED -- имя свойства --

value CDATA #IMPLIED -- значение свойства --

valuetype (DATA|REF|OBJECT) DATA -- Как интерпретировать значение - type %ContentType; #IMPLIED -- тип содержимого для значения,

если valuetype=ref --

>

Начальный тег - обязателен, конечный тег – запрещен.

Определения атрибутов:

Name = cdata

Этот атрибут определяет имя рабочего параметра, которое должно быть понятно вставляемому объекту. Учитывает ли имя свойства регистр, зависит от конкретной реализации объекта.

Value = cdata

Этот атрибут определяет значение рабочего параметра, задаваемого атрибутом name. Значения свойств не имеют значения в HTML; их значение определяется объектом.

Valuetype = data|ref|object [CI]

Этот атрибут определяет тип атрибута value. Возможные значения:

Data: Это значение используется по умолчанию. Оно означает, что значение, задаваемое атрибутом value, будет определяться и передаваться в объект в виде строки.

Ref: Значение, задаваемое атрибутом value, является адресом URI ресурса, где хранятся рабочие значения. Это позволяет средствам поддержки идентифицировать адреса URI, данные в качестве параметров. Адрес URI должен передаваться в объект как есть, то есть неразрешенным.

Object: Значение, задаваемое атрибутом value, является идентификатором, ссылающимся на объявление OBJECT в этом же документе. Идентификатором должно быть значение атрибута id для объявленного элемента OBJECT.

Type = content-type [CI]

Этот атрибут задает тип содержимого ресурса, назначаемого атрибутом value только в случае, если значением атрибута valuetype является "ref". Таким образом, этот атрибут определяет для агента пользователя тип значений, которые будут находиться по адресу URI, назначенному атрибутом value.

Элементы PARAM определяют набор значений, которые могут понадобиться объекту во время работы. В элементах OBJECT или APPLET может присутствовать любое число атрибутов PARAM в любом порядке, но они должны помещаться в начале тела включающего элемента OBJECT или APPLET.

Синтаксис имен и значений считается понятным обработчику объекта. Данный документ не указывает, как агенты пользователей должны загружать пары имя/значение, а также того, как они должны интерпретировать повторяющиеся имена параметров.

Вернемся к примеру с часами и покажем использование элемента PARAM: предположим, что апплет может принимать два рабочих параметра, определяющих его начальную высоту и ширину. Мы можем установить исходные размеры 40x40 пикселов с помощью двух элементов PARAM.

<P><OBJECT classid="https://www.miamachina.it/analogclock.py">

<PARAM name="height" value="40" valuetype="data">

<PARAM name="width" value="40" valuetype="data">

Этот агент пользователя не может сгенерировать приложение на языке Python.

</OBJECT>

В следующем примере рабочие данные для параметра "Init_values" объекта задаются в виде внешнего ресурса (файл GIF). Таким образом для атрибута valuetype устанавливается значение "ref", а атрибутом value является адрес URI ресурса.

<P><OBJECT classid="https://www.gifstuff.com/gifappli"

standby="Загрузка Элвиса...">

<PARAM name="Init_values"

value="./images/elvis.gif">

valuetype="ref">

</OBJECT>

Обратите внимание, что мы также установили атрибут standby, так что агент пользователя может отобразить сообщение во время загрузки генерирующего механизма.

Когда элемент OBJECT сгенерирован, агенты пользователя должны выполнить поиск содержимого только для тех элементов PARAM, которые являются их прямыми дочерними элементами и "feed" их to the OBJECT.

Таким образом, в следующем примере, если сгенерирован "obj1", "param1" применяется к "obj1" (и не применяется к "obj2"). Если "obj1" не сгенерирован, а "obj2" сгенерирован, "param1" игнорируется, а "param2" применяется к "obj2". Если ни один OBJECT не сгенерирован, ни один PARAM не применяется.

<P>

<OBJECT id="obj1">

<PARAM name="param1">

<OBJECT id="obj2">

<PARAM name="param2">

</OBJECT>

</OBJECT>


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: