XML - статьи



              

/A>Обзор языка XLink - часть 3


"clients.xml" атрибутов типа ID, и при данном способе идентификации может использоваться сокращенный синтаксис XPointer, напоминающий обращение к именованному якорю в HTML. Для идентификации элемента в каталоге (XML-документ "catalogue.xml") используется полный синтаксис XPointer. Из рассматриваемого примера легко видеть, что по сравнению с гиперссылками HTML простые ссылки XLink обладают более гибкими и мощными возможностями по связыванию ресурсов и описанию семантики этих связей.

  1. Расширенная ссылка (extended link) - это ссылка, которая выражает полную функциональность языка XLink. Расширенная ссылка может объединять произвольное количество участвующих в ней ресурсов, и участвующие ресурсы могут быть любой комбинацией локальных и удаленных.

Использование или следование по ссылке с какой-либо целью называется

переходом (traversal). Несмотря на то, что расширенные ссылки могут соединять произвольное количество ресурсов, переход всегда включает в себя ровно 2 ресурса [1]. Информация о том, как осуществлять переход между парой ресурсов, включающая в себя направление перехода и его семантику, задается при помощи дуги (arc).

Ввиду того, что расширенная ссылка предоставляет мощные возможности по связыванию ресурсов, структура расширенной ссылки может быть достаточно сложной. В общем случае она включает в себя элементы типа локатор [2], которые указывают на удаленные ресурсы; элементы типа ресурс, содержащие локальные ресурсы; элементы типа дуга, которые определяют дуги и условия перехода по ним.

Дуга в языке XLink является ориентированной, и 2 ресурса, соединяемые дугой, называются соответственно исходным (starting resource) и

целевым (ending resource) [2]. Дугу называют входящей (inbound), если ее исходный ресурс является удаленным ресурсом, а целевой ресурс - локальным. Дуга называется сторонней (third-party), если ни один из соединяемых ею ресурсов не является локальным. Благодаря наличию в языке XLink входящих и сторонних дуг обеспечивается возможность соединять ресурсы без их модификации.

Обычно элементы типа "расширенная ссылка'' располагаются отдельно от тех ресурсов, которые они соединяют (например, в совершенно разных документах). Расширенные ссылки важны для ситуаций, когда соединяемые ресурсы доступны только для чтения; или когда модификация этих ресурсов является дорогостоящей и сложной операцией, тогда как модификация отдельно располагающейся ссылки достаточно проста; или когда ресурсы имеют форматы, не поддерживающие встроенные ссылки (как для многих мультимедийных форматов).

Пример расширенной ссылки будет рассмотрен в разделе 5.

Хотя простые ссылки концептуально являются подмножеством расширенных ссылок, они синтаксически различны. В частности, простая ссылка определяет дугу неявным образом, и поэтому для преобразования простой ссылки в расширенную ссылку требуется осуществить несколько структурных преобразований.

Можно говорить о том, что предназначением простой ссылки является удобная короткая форма записи для эквивалентного случая расширенной ссылки [1]. Один элемент вида «простая ссылка» объединяет в себе базовую функциональность элементов типа «расширенная ссылка», «локатор», «дуга» и «ресурс». В том случае, когда реально требуется лишь подмножество свойств этих элементов, простая ссылка удобна как альтернатива расширенной ссылке.




Содержание  Назад  Вперед