XLog - язык обработки HTML- и XML-документов - page 2

С.С. Магазов, Д.О. Чугунов
2
XLog-документ.
Множество
XLog-документов
включает стан-
дартные XML/HTML-документы и XML/HTML-документы с пере-
менными, которые назовем
шаблонами
. В частности, XLog-документ
может состоять из одной переменной. Переменные, используемые в
XLog-документе, бывают двух видов:
атрибутивная переменная
,
принимающая в качестве значений атрибуты XLog-документа, и
эле-
ментная переменная
, принимающая в качестве значений XLog-
элемент или список XLog-элементов
.
Определение
атрибута
анало-
гично определению атрибута в XML-документе.
XLog-элемент по-
нимается так же, как элемент в XML-документе, т. е. он состоит из
открывающего и закрывающего тегов, обрамляющих текст или дру-
гие элементы [1].
Формат переменных следующий:
$
identifier
– атрибутивная переменная;
$_ – безымянная атрибутивная переменная;
$$
identifier
– элементная переменная;
$$_ – безымянная элементная переменная для элементов XLog-
документов,
где
identifier
– идентификатор. Безымянная переменная используется
так же, как и именная переменная, но к ней нельзя обратиться из про-
граммы.
Во время исполнения программы атрибутивная переменная по
стандарту XML может принимать строковое значение
.
Элементная переменная может принимать значения следующих
базовых типов: числовой (вещественный или целочисленный), стро-
ковый, XLog-документ, список XLog-документов
.
Список
XLog-документов задается следующим образом: <ob
1
…ob
n
>
или <ob
1
…ob
n
|$$X >, где ob
i
– либо объект одного из базовых типов,
либо список, либо переменная. $$X – элементная переменная.
Атрибутивная переменная может стоять на месте значений атри-
бутов, а элементная – на месте элементов XLog-документа
.
Пример 1.
Предметом нашего анализа будет HTML-документ,
состоящий из таблицы. Таблица имеет три столбца с текстовой ин-
формацией:
<html>
<head> <title> Пример </title> </head>
<body>
<table border="1">
<tr>
<td> </td>
<td>Петя послушный мальчик. Петя пошел в школу.</td>
1 3,4,5,6,7,8,9,10,11,12,...14
Powered by FlippingBook