Пространство имен языка XLink
Интересная особенность языка XLink заключается в том, что он не вводит новые элементы, а определяет только атрибуты, которые можно использовать в любых определяемых вами элементах. Каждый элемент в документе XML, использующий атрибуты языка XLink, становится ссылкой. Атрибуты, введенные языком XLink, находятся в пространстве имен http://www.w3.org /1999/xlink. Как обычно, перед использованием атрибутов надо связать это пространство имен с каким-либо префиксом. Очень часто этот префикс называют xlink: <someElement xmlns:xlink="http://www.w3.org/1999/xlink"> Содержимое элемента </someElement> Всего в языке XLink объявлено десять атрибутов: атрибут type задает тип ссылки; атрибут href описывает адрес ресурса, с которым связана ссылка; атрибут show определяет способ показа полученного по ссылке ресурса; атрибут actuate устанавливает момент активизации ссылки; атрибуты label, from, to отмечают и указывают начальные и конечные пункты ссылки; атрибуты role, arcrole, title объясняют смысл ссылки. Разумеется, кроме атрибутов языка XLink в объявляемых вами элементах-ссылках можно объявлять и любые другие атрибуты.
Атрибуты, используемые при создании ссылок на языке XLink Атрибут title может встретиться в ссылке любого типа, за исключением ссылки типа title, в которой он просто будет лишним. Значением атрибута title может быть любая строка символов. Она предназначена для человека и может быть выведена на экран дисплея, записана в журнальный файл сообщений или распечатана на принтере. Обычно эта строка играет роль комментария или информационного сообщения, поясняя действие ссылки или отмечая способ ее активизации. В отличие от обычного комментария атрибут title обрабатывается программой-обработчиком документа XML. Например, значение атрибута title можно использовать в подсказке, всплывающей при наведении на ссылку курсора мыши.
Листинг 4.1 показывает пример ссылки с атрибутом title. <someLnk xmlns:xlink="http://www.w3.org/1999/xlink" xlink:type="simple" xlink:title="3arpyacaeTCH классификатор" xlink:href="http://some.domain.com/pub/ind/kldr012.xml"> Классификатор адресов </someLnk> Ссылка на документ kldr012.xml, по своему действию аналогичная гиперссылке языка HTML. Первый атрибут элемента someLnk определяет префикс xlink пространства имен языка XLink. Второй атрибут xlink:type показывает тип ссылки. В третьем атрибуте xlink:title записано информационное сообщение. Четвертый атрибут xilnk:href задает адрес документа kldr012.xml. Атрибут label - назначение — пометить ссылку. В отличие от атрибута title значение атрибута label может быть только простым именем без специальных знаков, пробелов, двоеточий, точнее, значением типа NCName. Это имя предназначено для того, чтобы к элементу можно было обратиться из других элементов документа, а именно из элементов-ссылок типа arc. Поэтому атрибут типа label применяется только в ссылках типа locator или resource, чтобы пометить их для дальнейшего использования ссылками типа arc. Листинг 4.2. Метки и их использование <multLink xmlns:xlink="http://www.w3.org/1999/xlink" xlink:type="extended" xlink:title="CBЯ3b документов"> <src xlink:type="resource" xlink:label="s0012" /> <tgt xlink:type="locator" xlink:href="http://domain.com/docs/udr01.xml" xlink:label="t0012" /> <ref xlink:type="arc" from="s0012" to="t0012" /> </multLink> Элемент multLink — сложная ссылка типа extended. Сложные ссылки содержат в себе другие ссылки. В частности, в элементе multLink содержатся три ссылки. Элемент-ссылка src типа resource помечен меткой s0012. Он ссылается на текущий документ и используется в элементе ref как начальная точка определяемой ссылки, поскольку его метка s0012 записана в атрибуте from. Элемент-ссылка tgt с меткой tooi2 используется как конечная точка ссылки, т. к. эта метка присутствует в атрибуте to элемента ref. Начальной точкой ссылки становится текущий документ, а конечной — документ udrOl.xml.
Если мы запишем элемент ref по-другому: <ref xlink:type="arc" from="t0012" to="s0012" /> то получим обратную ссылку документа udrOl.xml на текущий документ. Атрибут href, значением которого служит адрес ресурса в форме URL, встречается только в ссылках типа simple и locator. причем для ссылки типа locator он обязателен. Его можно не записывать в элементе-ссылке типа locator явно, но тогда у него должно быть значение по умолчанию, определенное при описании схемы документа. Атрибут type обязателен для всех ссылок. Больше того, именно он определяет элемент как ссылку. Следующий пример показывает, как можно оформить ссылку в духе гиперссылки языка HTML: <myLink xmlns:xlink="http://www.w3.org/1999/xlink" xlink: Ъ1Ъ1е="Дополнительные сведения" xlink:type="simple" xlink:href="http://host.domain/newdoc.html"> Новая версия документа </myLink> Первый атрибут xmlns:xlink элемента myLink определяет префикс xlink имен язьжа XLink. Второй атрибут xlink:type указывает, что элемент myLink— ссылка типа simple. Третий атрибут xlink:href задает адрес URL документа, на который делается ссылка. Хотя атрибут type обязателен, можно сделать его присутствие неявным, задав ему значение по умолчанию при описании схемы документа. Например, при описании структуры документа XML элемент myLink из предыдущего примера можно объявить на языке XSD следующим образом: <xsd:element name="myLink" type="xsd:string"> <xsd:complexType> <xsd:attribute name="xlink:type" type="xsd:name" use="optional" default="simple" /> <xsd:attribute name="xlink:href" type="xsd:anyURL" use="required" /> </xsd:complexType> </xsd:element> После такого объявления атрибут xlink:type можно не записывать в элементе myLink, при этом значением атрибута и, следовательно, типом элемента myLink будет тип simple. Атрибуты from и to записываются только в дугах — ссылках типа arc — для указания начальной и конечной точки дуги. У элементов-ссылок, описывающих эти точки (это ссылки типа resource — точки в локальном ресурсе, или locator — точки, расположенные в удаленном ресурсе), должен быть атрибут label, помечающий ссылки. Значениями атрибутов from и to служат эти метки. В листинге 4.3 элемент-дуга load типа arc использует метки "loc" и "base", которыми помечены элементы sresource, описывающие начальную и конечную точки дуги.
Воспользуйтесь поиском по сайту: ©2015 - 2024 megalektsii.ru Все авторские права принадлежат авторам лекционных материалов. Обратная связь с нами...
|