XML - статьи

Nbsp;Исходный и целевой ресурсы дуги


Для хранения данных об исходном и целевом ресурсах дуги XLink предлагается использовать при ее представлении в виде информационной единицы дочерние информационные единицы типа «элемент». По аналогии с синтаксисом языка XLink для записи исходного и целевого ресурса дуги информационной единице, представляющей исходный ресурс, дадим локальное имя

from, а информационной единице, представляющей целевой ресурс - локальное имя to.

Заметим, что при представлении дуги XLink в виде информационной единицы не требуется использование пространств имен XML [18]. Как отмечается в [19], пространства имен в XML используются для того, чтобы позволить приложению однозначным образом распознать имя элемента или атрибута в XML-документе [20]. В частности, Спецификация XLink использует собственное глобальное пространство имен, чтобы элементы языка XLink могли быть распознаны среди прочих элементов XML-документа. В предлагаемом в настоящей статье представлении дуги XLink в виде информационных единиц ситуация иная: про все информационные единицы данного представления известно, что они служат для описания дуги, и поэтому использования в именах информационных единиц какого-либо пространства имен не требуется.

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

Дополнительно, для обеспечения прозрачности межресурсных связей, предлагается единообразное представление как для локальных, так и для удаленных ресурсов языка XLink. Данное единообразие достигается за счет наличия у информационной единицы, представляющей исходный (аналогично - целевой) ресурс дуги, любых из следующих 3-х дочерних информационных единиц типа «элемент»:


  • Информационная единица с именем uri, которая содержит последовательность символов, представляющих унифицированный идентификатор URI данного ресурса. Для удаленного ресурса XLink его унифицированный идентификатор явным образом задается в описании ресурса на языке XLink. Для локального ресурса XLink его идентификатором является унифицированный идентификатор XML-документа, в котором описан данный локальный ресурс.


  • Информационная единица с именем nodes, которая содержит сам ресурс - узел XML-документа или набор узлов - в качестве своих дочерних информационных единиц. Для локального ресурса XLink таким узлом является сам этот ресурс, т.к. только узел XML-документа может выступать в качестве локального ресурса.


  • Информационная единица с именем xpointer, которая содержит последовательность символов, представляющих идентификатор фрагмента на языке XPointer для данного ресурса. Идентификатор фрагмента может использоваться для определения удаленного ресурса XLink и задается явным образом в описании ресурса.


  • Необходимо отметить, что в зависимости от способа обработки XML-документов со ссылками языка XLink конкретным приложением, при описании дуги XLink в виде информационной единицы для данного приложения могут быть предпочтительными различные способы представления соединяемых дугой ресурсов. Так, если по семантике приложения предполагается осуществлять переходы по дуге многократно, то для обеспечения быстроты переходов разумно заранее вычислить удаленный целевой ресурс дуги и хранить полученный в результате вычисления набор узлов в описании дуги - как дочерние для информационной единицы nodes. Напротив, если предполагается долговременное хранение предлагаемого представления дуги XLink на диске, то с целью поддержания взаимосвязи между дугой и соединяемыми ею ресурсами, предпочтительно описывать эти ресурсы не "по значению'' - с использованием информационной единицы nodes, - а "по ссылке'' - с использованием совокупной семантики информационных единиц uri и xpointer.


    Содержание раздела