Смекни!
smekni.com

Язык математической разметки MathML (стр. 2 из 3)

на идентификатор или переменную, а отметка MN - на номер. Другие отметки обоз

начают схему размещения. Каждая схема размещения содержит определенное число

подвыражений в сторогом порядке. Например,MSUP схема должна содержать в точ

ности два подвыражения.

< x = (-b + - sqrt( b ^ 2 - 4ac)) / 2a >

<MROW>

<MI>x</MI>

<MO>=</MO>

<MFRAC>

<MROW>

<MROW>

<MO>-</MO>

<MI>b</MI>

</MROW>

<MO>&PlusMinus</MO>

<SQRT>

<MROW>

<MSUP>

<MI>b</MI>

<MN>2</MN>

</MSUP>

<MO>-</MO>

<MROW>

<MN>4</MN>

<MO>&InvisibleTimes;</MO>

<MI>a</MI>

<MO>&InvisibleTimes;</MO>

<MI>c</MI>

<MROW>

</MROW>

</SQRT>

</MROW>

<MROW>

<MN>2</MN>

<MO>&InvisibleTimes;</MO>

<MI>a</MI>

</MROW>

</MFRAC>

</MROW>

В этом примере следует обратить внимание на то, что знак "плюс/минус" - спе

циальный поименованный объект. MathML предоставляет большой список имен мате

матических объектов.

<Простая матрица>

<MROW>

<MI>A</MI>

<MO>=</MO>

<MROW>

<MF>[</MF>

<MTABLE>

<MTR>

<MTD><MI>x</MI></MTD>

<MTD><MI>y</MI></MTD>

</MTR>

<MTR>

<MTD><MI>z</MI></MTD>

<MTD><MI>w</MI></MTD>

</MTR>

</MTABLE>

<MF>]</MF>

</MROW>

</MROW>

2.2 Использование MathML согласных отметок

< x ^ 2 + 4x + 4 = 0 >

<EXPR>

<EXPR>

<EXPR>

<MI>x</MI>

<POWER/>

<MN>2</MN>

</EXPR>

<PLUS/>

<EXPR>

<MN>4</MN>

<TIMES/>

<MI>x</MI>

</EXPR>

<PLUS/>

<MN>4</MN>

</EXPR>

<E/>

<MN>0</MN>

</EXPR>

Отметки EXPR используются в том случае, когда содержание носит математический

характер.

В MathML имеются также и пустые отметки. В XML пустые отметки имеют вид

<.../>.

При помощи отметок содержания MathML можно описать основные математические

объекты, однако часто возникают ситуации, когда используются как отметки содер

жания, так и отметки представления.

< x = (- b + - sqrt(b ^ 2 - 4ac)) / 2a >

<EXPR>

<MI>x</MI>

<E/>

<EXPR>

<EXPR>

<EXPR>

<MO>-</MO>

<MI>b</MI>

</EXPR>

<MO>&PlusMinus</MO>

<MSQRT>

<EXPR>

<EXPR>

<MI>b</MI>

<POWER/>

<MN>2</MN>

</EXPR>

<MINUS/>

<EXPR>

<MN>4</MN>

<TIMES/>

<MI>a</MI>

<TIMES/>

<MI>c</MI>

</EXPR>

</EXPR>

</MSQRT>

</EXPR>

<OVER/>

<EXPR>

<MN>2</MN>

<TIMES/>

<MI>a</MI>

</EXPR>

</EXPR>

</EXPR>

Рассмотрим пример использования отметки SEMANTICS :

< Интеграл >

<SEMANTICS>

<MROW>

<MSUBSUP>

<MO>&int</MO>

<MN>0</MN>

<MI>t</MI>

</MSUBSUP>

<MFRAC>

<MROW>

<MO>&dd</MO>

<MI>x</MI>

</MROW>

<MI>x</MI>

</MFRAC>

</MROW>

<EXPR>

<INT>

<LOWLIMIT>

<MN>0</MN>

</LOWLIMIT>

<UPLIMIT>

<MI>t</MI>

</UPLIMIT>

<EXPR>

<MN>1</MN>

<OVER/>

<MI>x</MI>

</EXPR>

<BVAR>x</BVAR>

</INT>

</EXPR>

</SEMANTICS>

3. Отметки представления

3.1 Введение

3.1.1 Элементы представления

Элементы представления соответствуют конструкциям традиционной математичес

кой записи и позволяют описывать синтаксическую структуру математического вы

ражения. Например, структура This улучшает качество математической записи и в

тех случаях, когда не известена, например, разрешающая способность монитора.

3.1.2 Типы элементов представления

Элементы представления можно разделить на два класса : лексемы и схемы раз

мещения. Существует также набор пустых элементов, используемых вместе с конкрет

ной схемой размещения.

Все лексемы (в синтаксическом смысле),включенные в математическое выражение,

должны быть помечены MathML отметками лексем. Типы MathML лексем : идентифика

торы (переменные, имена функций и т.д.),числа, операторы, заграждающие метки (на

пример, круглые скобки) и строковые литералы. Для представления текста нематема

тического характера используются элементы лексем.

Схемы размещения - конструкторы выражений традиционных математических запи

сей.

3.1.3 XML атрибуты

Согласно проекту XML атрибуты должны иметь вид : attr = "..." .Атрибуты,чье

значение определено как числовое, могут быть целыми числами или числами с пла

вающей запятой. Существуют атрибуты со значениями , связанными с определенным

шрифтом.

3.1.4 Пробелы

По умолчанию XML процессоры удаляют конечные пробелы, символы "новой строки",

вкладки (позиции табуляции) и сокращают любое внутреннее незаполненное прост

панство до одиночного пробела (" ").В случае необходимости использование выше

перечисленных символов возможно после их кодирования и указания для них сбыл

кие объекта.

3.1.5 Требуемые параметры

Большинство из описанных элементов требуют определенного числа параметров

(1,2 или 3).

MathML содержит универсальный элемент раэделителя < SEP/>,игнорируемый эле

ментами представления.

3.1.6 Пустые элементы

Единственным пустым элементом лексемы является <MSPACE/>.Пустые элементы

<MPRESCRIPTS/> и <NONE/> могут быть включены только в определенную схему раз

мещения.

3.1.7

Некоторые элементы, например,<MOVER> используются для "украшения" операторов.

3.1.8 Резюме

Лексемы :

<MI> идентификаторы

<MN> номер

<MO> оператор

<MF> заграждающая метка

<MTEXT> текст

<MSPACE/> пробел

<MS> литерал строки

Общая схема размещения :

<MSTYLE> изменение стиля

<MERROR> включение сообщения о синтаксической ошибке

<MPHANTOM> при сохранении размера содержание становится невидимым

<MROW> горизонтальная группировка любого числа подвыражений

<MFRAC> формирование дроби из двух подвыражений

<MSQRT> формирование знака квадратного корня (радикала без индекса)

<MROOT> формирование радикала с определенным индексом

Таблицы и матрицы :

<MTABLE> таблица или матрица

<MTR> строка в таблице или матрице

<MTD> одно вхождение в таблицу или матрицу

3.2 Лексемы

В лексемы можно включать любое количество символов, в том числе позволительно

использовать лексемы без содержания.

3.2.1 <MI> - идентификаторы

Идентификаторы включают в себя переменные, имена функций и символьные констан

ты.

Namevaluesdefaultfontsizenumber (points)inheritedfontweightplain|

boldinheritedfontslantplain |

italicautomaticfontfamilystringinheritedfontcolor#rrggbbinherited

Идентификаторы символа Single по умолчанию выводятся в курсивном шрифте, сим

вольные идентификаторы выводятся в ненаклонном шрифте.

<MI>x</MI>

<MI>&pi;</MI>

<MI>D</MI>

<MI>sin</MI>

<MROW>

<MI>sin</MI>

<MO>&ApplyFunction;</MO>

<MI>x</MI>

</MROW>

Текст, который нужно обработать как символ, должен быть представлен в виде :

<MROW>

<MN>1</MN>

<MO>+</MO>

<MI>...</MI>

<MO>+</MO>

<MI>n</MI>

</MROW>

3.2.2 <MN> - номер

<MN> лексемы, в отличии от <MI>,обычно представлены в ненаклонном шрифте.

<MN>2</MN>

<MN>0.123</MN>

<MN>1,000,000</MN>

<MN>2.1e10</MN>

3.2.3 <MO> - операторы

Лексемы, являющиеся операторами, относятся к типу <MO>.

<MO>+</MO>

<MO>&le;</MO>

<MO>++</MO>

<MO>&sum;</MO>

<MO>.NOT.</MO>

3.2.4 <MF> - заграждающие метки

Согласованные пары заграждающих меток должны быть включены в качестве перво

го и последнего элементов в схему <MROW>.

Рассмотрим примеры выражений, содержащих заграждающие метки:

(a + b)

<MROW>

<ME>(</MF>

<MROW>

<MI>a</MI>

<MO>+</MO>

<MI>b</MI>

</MROW>

<MF>)</MF>

</MROW>

[0,1)

<MROW>

<MF>[</MF>

<MROW>

<MN>0</MN>

<MO>,</MO>

<MN>1</MN>

</MROW>

<MF>)</MF>

</MROW>

3.2.1.4

Механизмы исполнения операторов и заграждающих меток идентичны и более слож

ны по сравнению с другими маркерами.

Многие математические символы типа интегрального символа, знака "+",круглых

скобок и т.д. имеют заданные по умолчанию атрибуты, которые могут включаться

в <MO> и <MF> схемы.

Многие операторы в каждой конкретной форме могут использоваться по-разному.

Знак "+",например, в зависимости от ситуации может быть как префиксом, так и

инфиксом.

Если оператор является первым подвыражением в <MROW> и его длина превышает

единицу, то используется префиксная форма; если же оператор является послед

ним подвыражением в <MROW>,то правилами предусматривается использование пост

фиксной формы. Инфиксная форма для операторов, включенных в схему типа <MROW>,

не используется.

Если возникает ситуация выбора одной из нескольких форм и не дано никаких

дополнительных указаний, то право ее остается за пользователем.

Существуют четыре атрибута, регулирующие соотношениями между размерами опе

раторов ,заграждающих меток и других элементов : stretchy, symmetric, maxsize

и minsize. Например, если для символа maxsize="3",это означает, что его размеры

могут превысить стандартные не более, чем в три раза.

Рассмотрим пример: установить максимальный размер круглой скобки.

<MROW>

<MF maxsize="1">(</MF>

<MFRAC><MI>a</MI><MI>b</MI></MFRAC>

<MF maxsize="1">)</MF>

</MROW>

3.2.5 <MTEXT> - текст

Лексема <MTEXT> используется для представления текста нематематического ха

рактера.

Этот элемент часто используется для включения в документ "невидимых симво

лов".

Элементы, входящие в схемы типа <MTEXT>, могут быть включены в схему типа

<MROW>.

<MFRAC>

<MROW>

<MTEXT>&thickspace;</MTEXT>

<MI>a</MI>

</MROW>

<MI>b</MI>

</MFRAC>

Примеры :

<MTEXT>Theorem 1:</MTEXT>

<MTEXT>&thinspace;</MTEXT>