Вычисляемый конструктор инструкции по обработке
Вычисляемый конструктор инструкции по обработке имеет одну из следующих форм:
processing-instruction приложение {содержимое}
или
processing-instruction {выражение} {содержимое}
В первой форме создается инструкция по обработке с заданным значением параметра приложение (типа NCName) и вычисляемым параметром содержимое (типа xs:string). Во второй форме параметр приложение является результатом вычисления выражения.
Пример задания вычисляемого конструктора документа, текстового узла, комментария и инструкции по обработке:
Запрос на обработку с использованием вычисляемых конструкторов имеет следующий вид:
xquery version "1.0";
declare variable $email-server as xs:string:="mail.com";
document
{
element message-subjects
{
processing-instruction outputFont {"Arial"},
comment {fn:concat("Сообщение 1 в ",
$email-server)},
element subject
{
attribute from
{fn:concat('ivanov','@',$email-server)},
attribute to
{fn:concat('sidorov','@',$email-server)},
text{"О встрече"}
},
comment {fn:concat("Сообщение 2 в ",
$email-server)},
element subject
{
attribute from
{fn:concat('petrov','@',$email-server)},
attribute to
{fn:concat('sidorov','@',$email-server)},
text{"Поздравление"}
}
}
}
Результат обработки запроса имеет следующий вид:
<?xml version="1.0" encoding="windows-1251"?>
<message-subjects>
<?outputFont Arial?>
<!--Сообщение 1 в mail.com-->
<subject from="ivanov@mail.com"
to="sidorov@mail.com">О встрече</subject>
<!--Сообщение 2 в mail.com-->
<subject from="petrov@mail.com"
to="sidorov@mail.com">Поздравление</subject>
</message-subjects>
Дата добавления: 2015-03-19; просмотров: 687;