Листинг 4.3. Связь удаленных ресурсов
<tplink xlink:type="extended"> <sresource xlink:type="locator" xlink:label="loc" xlink:href="http://some.com/pub/res024.xml" /> <sresource xlink:type="locator" xlink:label="base" xlink:href="http://some.com/pub/res043.xml" /> <load xlink:type="arc" xlink:from="loc" xlink:to="base" /> </tplink> Описания начальной и конечной точек обязательно должны располагаться в той же ссылке типа extended, что и описание дуги, связывающей их. Необязательный атрибут show можно употреблять в ссылках типа simple и arc в тех случаях, когда предполагается показать полученный по ссылке ресурс на экране. У атрибута show всего пять значений, аналогичных значениям атрибута target: "new" — полученный ресурс следует показать в новом месте, а не там, где была ссылка на него; "replace" — полученный ресурс следует показать в том же окне, фрейме, или на той же панели, где была ссылка на ресурс; "embed" — полученный ресурс следует показать в том же окне, где была ссылка на него, при этом первоначальный ресурс не должен подвергаться преобразованиям; "other" — какой-то способ представления, описанный в других элементах документа; "none" — способ представления не описан ни в одном элементе документа. Например: <sign xlink:type="simple" xlink:href="http://some.domain/pub/math/sigma.gif"> xlink:show="embed" xlink:title="3HaK суммы" /> Атрибут actuate показывает момент времени для активизации ссылки. Используется в ссылках типа simple и arc. Атрибут actuate может принимать четыре значения: "onLoad" — активизировать ссылку сразу же при загрузке документа; "onRequest" — активизировать ссылку по какому-то событию — действию пользователя, таймеру и т. п.; "other" — какой-то способ активизации, описанный в других элементах документа;
"none" — способ активизации не описан ни в одном элементе документа. Например: <sign xlink:type="simple" xlink:href="http://some.domain/pub/intro.xml"> xlink:actuate="onLoad" /> Атрибут role указывает на ресурс, описывающий ссылку. Значения атрибута — абсолютные адреса URL. Его удобно использовать в тех случаях, когда несколько ссылок описываются одним ресурсом, определяющим роль, которую играют эти ссылки. Атрибут role можно записать в элементе-ссылке любого типа, за двумя исключениями: в ссылке типа title и в ссылке типа arc. Например: <problem xlink:type="simple" xlink:href="http://some.domain/pub/articles/integral.xml"> xlink:role="http://some.domain/pub/roles/math.xml"> Решение интегрального уравнения </problem> Атрибут arcroie служит той же цели, что и атрибут role, но применяется только в ссылках типа simple и arc. Его значением тоже может быть любая строка URL, указывающая на реальный ресурс или служащая только идентификатором.
Типы ссылок, создаваемых на языке XLink Типы ссылок Как видно из предыдущих примеров, ссылки бывают разных типов. Во-первых, ссылка может быть простой или расширенной. Во-вторых, ссылка может быть информационным ресурсом, указателем на ресурс, дугой графа или просто заголовком. Кроме того, значением атрибута type может служить слово none, означающее, что остальные атрибуты и содержимое элемента не имеют никакого отношения к ссылкам. Тип none Указание в качестве значения атрибута xlink:type слова none показывает, что элемент вовсе не является ссылкой, несмотря на то, что другие атрибуты и его содержимое могут вьгглядеть так, как будто относятся к языку XLink. Это полезно, если в каких-то ситуациях элемент надо использовать как ссылку, а в других ситуациях — нет. Вот, например, определение простого типа, сделанное на языке XSD. Определяемый тип состоит из двух значений: "simple" И "none". <xsd:simpleType name="docType"> <xsd:restriction base="xsd:name">
<xsd:enumeration value="simple" /> <xsd:enumeration value="none" /> </xsd:restriction> </xsd:simpleType> Далее идет объявление элемента anEiem с атрибутом xlink:type только что определенного типа locType. Такой атрибут принимает значения "simple" ИЛИ "none". <xsd:element name="anElem" type="xsd:string"> <xsd:complexType> <xsd:attribute name="xlink:type" type="locType" use="required" /> <xsd:attribute name="xlink:href" type="xsd:anyURL" use="optional" /> </xsd:complexType> </xsd:element> После этого объявления элемент anEiem можно использовать в документах XML как ссылку: <anElem xlink:type="simple" xlink:href="fl.xml"> Ссылка на описание </апЕ1ет> или как простой элемент: <anElem xlink:type="none"> Простое описание </anElem> Тип locator Ссылка типа locator описывает удаленный информационный ресурс. Описание выполняется обязательным атрибутом href, записанным явно или имеющим значение по умолчанию. Значением атрибута href служит адрес URL описываемого информационного ресурса. Например: <myBiogr xlink:type="locator" xlink:href="http://hsh.com/names/ivanov.xml" xlink:label="L1234" /> Описание удаленного ресурса используется затем при создании ссылки-дуги типа arc. Ссылка типа locator не применяется самостоятельно, а только как один из элементов сложной ссылки типа extended. Пример такого использования приведен в листинге 4.2. Если элемент типа locator не записан внутри сложной ссылки типа extended, то он не будет обрабатываться как ссылка, а будет считаться просто неким элементом XML. Кроме обязательного атрибута href, элементы типа locator могут содержать атрибуты role, title и label, и др. У элементов типа locator может быть любое тело, в том числе и вложенные элементы. Вложенные элементы не будут обрабатываться как ссылки. Ссылки типа simple связывают один документ, тот, в котором определена ссылка, с другим документом или другой частью того же самого документа. Таким образом, связь устанавливается только между двумя документами, направление связи идет только от текущего документа, в котором записана ссылка типа simple, к удаленному ресурсу, адрес URL которого указан в атрибуте href. В ссылке типа simple атрибут href необязателен. В случае его полного отсутствия, если у него нет даже значения по умолчанию, ссылка типа simple просто описывает информационный ресурс подобно ссылке типа resource. Пример ссылки типа simple приведен в листинге 4.1.
Кроме необязательного атрибута href, в элементах-ссылках типа simple можно использовать атрибуты role, arcrole, title, show, actuate И атрибуты, не относящиеся к языку XLink. У элемента типа simple может быть любое содержимое, но вложенные элементы не будут рассматриваться как ссылки. Ссылка типа extended, пример которой уже приведен в листинге 4.2, может связывать любое число документов и других информационных ресурсов. Некоторые из этих связей могут быть входящими, другие — выходящими, третьи могут связывать сторонние документы. Описание таких связей производится элементами, вложенными в элемент-ссылку типа extended. Эти вложенные элементы — тоже ссылки, их типы — title, resource, locator или arc. Самый простой тип ссылки — тип title. Атрибут xlink:type — это единственный обязательный атрибут языка XLink в такой ссылке. Более того, кроме него в ссылке типа title нет ни одного атрибута языка XLink, хотя могут быть атрибуты из другого пространства имен. Ссылка типа title ни на что не ссылается. Ее обычное назначение — дать описание расширенной ссылке, предназначенное для человека, а не для программы-обработчика. Например: <rem xlink:type="title"> Другие материалы по теме </rem> Значение атрибута title — простая строка символов, а содержимым элемента-ссылки типа title может быть что угодно, в том числе какой-то размеченный текст, содержащий вложенные элементы. Например: <im xlink:type="title"> <html> <body> <п2>Чертеж 2</h2> <img src="p2302.gif"> </body> </html> </im> Элементы-ссылки типа title можно вложить не только в ссылку типа extended, но и в ссылки типа locator или arc. Ссылка типа resource записывается в теле сложной ссылки типа extended и отмечает локальный ресурс, чаще всего текущий документ XML, в котором записана ссылка. Правильнее было бы сказать, что это не ссылка, а пометка, сделанная в каком-то месте локального ресурса атрибутом label, как это представлено, например, в листинге 4.2. Кроме атрибута label в ссылках типа resource можно использовать атрибуты title и role языка XLink, а также любые атрибуты, определенные самостоятельно. У элемента типа resource может быть любое содержимое, в том числе и вложенные элементы, хотя чаще всего такой элемент бывает пустым. Ссылка типа arc создает дугу. Как правило, каждая такая ссылка создает дугу только одного вида: входящую, выходящую или стороннюю. В создании дуги участвуют атрибуты from и to. Они задают начало и конец дуги. Кроме этих атрибутов в ссылках-дугах можно использовать атрибуты arcrole, title, show и actuate. Содержимое элемента типа arc может быть любым, но вложенные в него элементы не будут рассматриваться как ссылки.
Воспользуйтесь поиском по сайту: ©2015 - 2024 megalektsii.ru Все авторские права принадлежат авторам лекционных материалов. Обратная связь с нами...
|