<annotation>

Элемент <annotation> используется для добавления аннотаций или комментариев к математическим выражениям MathML. Содержимое внутри <annotation> предназначено для экранных ридеров, поисковых систем и других технологий и не отображается в браузере. Исключением являются браузеры Safari и Firefox, которые покажут содержимое <annotation>, если первый дочерний элемент внутри <semantics> содержит ошибки или отсутствует.

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

<math display="block"> <semantics> <mrow> <mn>3</mn> <mo>+</mo> <mn>2</mn> </mrow> <annotation>Сложение двух чисел: три и два.</annotation> <semantics> </math>

Аннотация также может содержать альтернативное представление математического выражения, например, в виде LaTeX. Для этого к <annotation> добавляется атрибут encoding, указывающий на тип данных. Для LaTeX значением будет application/x-tex.

<math display="block"> <semantics> <mrow> <mi>E</mi> <mo>=</mo> <mi>m</mi> <msup> <mi>c</mi> <mn>2</mn> </msup> </mrow> <annotation encoding="application/x-tex">E=mc^2</annotation> </semantics> </math>

Синтаксис

Внутри <semantics> первым дочерним элементом идёт математическое выражение, после которого располагается один или несколько <annotation>. Схематично это выглядит так.

<semantics>
 <mrow>Математическое выражение</mrow>
 <annotation>Аннотация к нему</annotation>
</semantics>

Атрибуты

encoding
Указывает, в каком формате написана аннотация. К примеру, для LaTeX используется значение application/x-tex.

Пример

<!DOCTYPE html> <html lang="ru"> <head> <meta charset="utf-8"> <title>MathML</title> </head> <body> <math display="block"> <semantics> <mrow> <munderover> <mo>∫</mo> <mi>a</mi> <mi>b</mi> </munderover> <mi>f</mi> <mo>'</mo> <mo fence="true" form="prefix" stretchy="false">(</mo> <mi>x</mi> <mo fence="true" form="postfix" stretchy="false">)</mo> <mi>d</mi> <mi>x</mi> <mo>=</mo> <mi>f</mi> <mo fence="true" form="prefix" stretchy="false">(</mo> <mi>b</mi> <mo fence="true" form="postfix" stretchy="false">)</mo> <mo>−</mo> <mi>f</mi> <mo fence="true" form="prefix" stretchy="false">(</mo> <mi>a</mi> <mo fence="true" form="postfix" stretchy="false">)</mo> </mrow> <annotation encoding="StarMath 5.0">int from a to b f'(x) dx = f(b) - f(a)</annotation> </semantics> </math> </body> </html>

Спецификация

MathML Core

Браузеры

109 109 95 5 1
109 4 74 4.2

В таблице браузеров применяются следующие обозначения.

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

Число указывает версию браузреа, начиная с которой элемент поддерживается.

См. также