Простые связи
Рассмотрим следующий пример:
<COMPOSER xmlns:xlink="http://www.w3.org/1999/xlink" xlink:type="simple" xlink:href="http://www.users.interport.net/~beand/"> Beth Anderson </COMPOSER> <FOOTNOTE xmlns:xlink="http://www.w3.org/1999/xlink" xlink:type="simple" xlink:href="footnote7.xml">7</FOOTNOTE> <IMAGE xmlns:xlink="http://www.w3.org/1999/xlink" xlink:type="simple" xlink:href="logo.gif" xlink:actuate="onLoad" xlink:show="embed"/>
В этом примере элементы имеют семантические имена, которые описывают их содержание, а не то, как они себя ведут. Информация о том, что эти элементы - связи, присутствует в атрибутах, но не в именах элементов. Атрибуты же определяют поведение связывания.
В самом первом элементе COMPOSER атрибут xlink:href определяет адресат связи. Значение атрибута - абсолютный URL http://www.users.interport.net/~beand/. Этот связующий элемент описывает соединение элемента COMPOSER текущего документа, содержание которого "Beth Anderson", с удаленным документом в . Если бы мы включили этот элемент в документ XML и загрузили его в Web-браузер, поддерживающий XLink, как, например, Mozilla or Netscape 6, браузер подчеркнул бы эту связь, окрасив ее в синий цвет, и при нажатии на нее открыл страницу .
Однако, данную ссылку можно интерпретировать более абстрактно: как просто определение однонаправленного соединения от одного ресурса, элемента COMPOSER, к другому ресурсу, Web-странице в . На рисунке 1 показано это соединение. При этом оно на самом деле не подразумевает какой-либо особой семантики или поведения. Что эта абстрактная связь означает - решать приложению, которое читает этот документ.
Рис. 1.
В элементе FOOTNOTE значение атрибута xlink:href - это относительный URL footnote7.xml. Этот связующий элемент описывает соединение элемента FOOTNOTE текущего документа, содержание которого "7", с документом с именем footnote7.xml, находящемся на том же сервере, в том же каталоге, что и документ, в котором появляется эта связь.
Наконец, в третьем элементе IMAGE значение атрибута xlink:href - это относительный универсальный локатор ресурса logo.gif. И снова протокол, хост и каталог этого документа берется из протокола, хоста и каталога документа, в котором появляется эта связь. Однако, этот элемент требует немного отличного поведения. Вместо ожидания, пока пользователь активизирует связь, атрибут xlink:actuate просит, чтобы связь была активизирована автоматически, как только этот документ загрузится. Атрибут xlink:show требует, чтобы результат был встроен в текущий документ, а не заменял его.
Следующий подраздел посвящен этим двум атрибутам: xlink:actuate и xlink:show.