Реализация расширяемого эссе
(расширяемое эссе)

1

+

Предлагается гипертекстовая схема расширяемого эссе, т.е. краткого изложения материала - учебного, научного, познавательного, справочного - с дополняющими, библиографическими, иллюстративными и т.д. опциональными расширениями; возможны также расширения, содержащие контрольные вопросы по прочитанному.

+

Используются следующие расширения и их знаки:

    +   - сказать подробнее,

    :     - привести пример,

  [   ]   - указать, где об этом можно прочесть,

    T   - задать контрольный вопрос с проверкой ответа.

  ←   - скрыть ранее сделанное расширение.

[ ]

2

+

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

Текст в формате XML может быть преобразован к другому текстовому формату с помощью XSL-преобразования, это преобразование представляется в виде текстового файла с набором инструкций на языке XSLT.

+

Нами подготовлен XSL-файл, который преобразует XML-файл эссе в HTML-файл, этот последний затем может быть открыт любым современным браузером (например, Internet Explorer, Safari или Chrome).

+

Результирующий HTML-файл содержит необходимые элементы, обеспечивающие раскрытие и свертывание расширений, в том числе подчиненных, показ контрольных вопросов и проверку правильности выбранных ответов.

Основная сложность реализации сосредоточена в XSL- преобразовании. Именно там содержится вся необходимая логика оформления эссе, правила генерирования и вставки элементов управления эссе, а также механизмов обработки действий с этими элементами управления.

3

Данные в формате XML имеют структуру дерева, т.е. в содержательной части элемента данных между открывающим и закрывающим тегом (для краткости принято говорить просто “элемент” и называть элемент именем соответствующего тега) могут встречаться другие элементы, которые в свою очередь также могут иметь вложенные элементы. Структура дерева наряду с собственно тегами определяет семантику текста в формате XML, эта структура в случае нашей реализации обеспечивает получение с помощью XSL-преобразования правильно работающего HTML-файла расширяемого эссе.

Корнем XML-дерева расширяемого эссе служит элемент Essay. Внутри элемента Essay, может присутствовать элемент Title, содержимое которого задает заголовок эссе, а также один или несколько элементов Part. С помощью элемента Part эссе разбивается на последовательные части (также называемые пунктами). Внутри каждого элемента Part, может присутствовать элемент Number, содержимое которого задает номер этой части и один или несколько элементов Paragraph, содержимое которых соответствует абзацам данной части эссе.

+

Внутри каждого элемента Paragraph может присутствовать элемент Basic, содержимое которого задает основной текст данного абзаца, и дополнительно может присутствовать элемент Extension, его содержимое задает расширение данного абзаца. С помощью атрибута type элемента Extension определяется тип расширения: “More”, “Cite” и “Example” для расширений с дополнительной информацией, библиографической ссылкой или примером соответственно.

Внутри каждого элемента Extension в свою очередь может присутствовать один или более элементов Paragraph, содержимое которых задает абзацы данного расширения, а также вложенные расширения, если в каком-либо из элементов Paragraph, помимо элемента Basic вновь встретится и элемент Extension.

:

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

4

Внутри элемента Part также может присутствовать элемент Tasks, он определяет набор контрольных вопросов по данной части эссе. Внутри элемента Tasks может присутствовать один или более элементов Task, с помощью которых определяются эти вопросы.

:

Внутри элемента Task должен быть элемент Question (формулировка контрольного вопроса), элемент Options (с помощью набора элементов Option задаются варианты ответов на вопрос), элемент Answer (порядковый номер правильного варианта ответа среди вариантов внутри элемента Options), и элемент Comment (пояснение к правильному ответу).

При раскрытии расширения T читатель получает контрольный вопрос. Этот вопрос выбирается случайно из набора, определенного внутри элемента Tasks.

T

5

:

Для реализации подчиненности расширений (текст подчиненного расширения требует раскрытия соответствующего головного расширения, поскольку использует представленную в нем информацию) привлекается механизм меток. Абзац, расширение которого может повлечь расширение другого абзаца, снабжается меткой, для этого в соответствующий элемент Paragraph добавляется атрибут label, значение которого будет использоваться при указании подчиненности.

:

Метка абзаца используется в подчиненном расширении - для этого элемент Extension получает дополнительный атрибут linked со значением, соответствующим метке того абзаца, расширение которого должно быть раскрыто вместе с данным подчиненным расширением.

:

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

+

Расширение, головное по отношению к некоторому другому расширению, само может быть подчиненным по отношению к какому-то расширению. В этом случае будут раскрываться все подчиненные расширения по цепочке. Также может оказаться, что некоторое головное расширение является вложенным. В этом случае будут раскрываться и объемлющие расширения.

6

Для несложного форматирования текстов внутри абзацев предусмотрен ряд дополнительных тегов.

:

em - указывает, что текст должен быть выделен курсивом;

:

bf - указывает, что текст должен быть выделен жирным шрифтом.

:

p - указывает, что текст должен начинаться с новой строки.

:

center - указывает, что текст должен располагаться по центру.

:

indent - указывает, что перед текстом должен быть сделан отступ (несколько таких тегов подряд задают двойной, тройной и т.д. отступ);.

:

img позволяет вставить в текст изображение, расположенное в файле по за- данному в атрибуте src адресу; в частности таким образом можно вставлять в текст изображения сложных формул, которые не записываются простым текстом (для этого изображения формул должны быть подготовлены заранее).

Также отметим, что символы < и > не могут использоваться напрямую в тексте XML, так как являются служебными, поскольку с их помощью записываются теги. При необходимости их использования в тексте они задаются последовательностями символов &lt; и &gt; соответственно.

7

[ ]

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