Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
шпоры-2 оопип часть 4.doc
Скачиваний:
46
Добавлен:
01.04.2014
Размер:
445.44 Кб
Скачать

74. Язык xLink (Атрибуты связующих элементов xLink, возможные значения атрибута xlink:show, возможные значения атрибута xlink:actuate)

XML Linking Language (XLink) — это разработанный в консорциуме W3 язык разметки, позволяющий вставлять в XML документы элементы, чтобы создать и описать ссылки между ресурсами. Он использует синтаксис XML, чтобы создать структуры, которые смогут описать как простые однонаправленные ссылки сегодняшнего HTML, так и сложные ссылки.

В XLink используются два типа связующих элементов (linking elements): simple (простой) - подобный "a" и "img" в HTML - и extended (расширенный). Однако, XLink не требует задания какого-либо определенного "корректного" имени для связей; наоборот, эта технология позволяет решить, какие элементы будут использоваться в качестве связей. Достигается это с помощью атрибута XLink type (тип). Приведенный ниже фрагмент иллюстрирует сказанное:

<environment xlink:type="extended">

<!-- Это расширенная связь -->

<!-- Здесь должны быть включены/указаны задействованные ресурсы -->

</environment>

Атрибут xlink:show может принимать одно из следующих значений:

replace;

new;

embed;

other;

none.

Если значение xlink:show равно replace, то при активизации связи (как правило, посредством щелчка мышкой по этой связи, по крайней мере, в GUI-браузерах) адресат связи заменяет текущий документ в том же самом окне. (Это поведение является действием по умолчанию для связей HTML.) Например:

<COMPOSER xlink:type="simple"

xlink:show="replace"

xlink:href="http://www.users.interport.net/~beand/">

Beth Anderson

</COMPOSER>

Если значение xlink:show равно new, то активизация связи вызывает открытие нового окна, в котором отображается адресуемый ресурс. Это похоже на поведение связей HTML, когда атрибуту target присвоено значение blank. Наконец, атрибуту xlink:show может быть присвоено значение none, чтобы показать, что документ не содержит никакой информации, которая могла бы помочь приложению решить, что, если уж на то пошло, делать со связью. В этом случае все зависит только от приложения.

Независимо от того, какое поведение атрибут xlink:show предлагает, браузер или иное приложение, читающее документ, при активизации связи может делать все, что угодно, в том числе и ничего.

Атрибут xlink:actuate

Атрибут xlink:actuate может принимать одно из следующих значений:

onRequest;

onLoad;

other;

none.

Значение onRequest указывает, что связь должна обходиться только тогда, когда пользователь запросил ее и если он это сделал. (Это поведение обычной связи HTML.) Например, приведенная ниже связь выполняет переход в книжный магазин FatBrain только в том случае, если пользователь потребует это действие:

<PURCHASE xlink:type="simple" xlink:actuate="onRequest"

xlink:href="http://www.fatbrain.com/">

Buy from FatBrain

</PURCHASE>

С другой стороны, если атрибут xlink:actuate связующего элемента равен onLoad, эта связь прослеживается, как только загружен документ, содержащий эту связь. Например, вы можете установить этот атрибут, равным onLoad, чтобы изображение или другие части внешнего содержания были встроены в связывающий документ. В этом случае пользователю не нужно щелкать мышкой на связи, чтобы проследовать по ней.

Если значение xlink:actuate равно other, то приложение должно искать в документе другую разметку, не описанную с помощью XLink, чтобы решить, когда обходить эту связь. Например, браузер мог бы определить элемент PRELOAD, как указание на то, что на этой странице документ или изображение пока не применяются, но скоро, вероятно, будут использоваться.

<PRELOAD xlink:type="simple" xlink:href="logo.gif"

xlink:actuate="other" xlink:show="none"/>

Наконец, присвоение атрибуту xlink:actuate значения none, означает, что приложение будет самостоятельно решать, обходить ли и, если да, то когда обходить эту связь.