MathML - Guia Rápido

MathML significa Mathematical Markup Language e é um aplicativo baseado em XML. É usado para descrever notações matemáticas e científicas. Suas versões 1 e 2 foram criadas e desenvolvidas porThe Math Working Groupque é um dos grupos de trabalho mais antigos do W3C durante 1996-2004. MathML versão 3 foi criado durante o segundo período de atividade do Math Working Group (2006-2016) e é um padrão ISO.

Matemática na web

MathML é baseado em XML e tem um número limitado de tags que podem ser usadas para marcar uma equação matemática em termos de formato e sua semântica. MathML pretende capturar o significado da sintaxe, bem como a formatação da equação. Considerando o fato de que as equações matemáticas são frequentemente significativas para muitos aplicativos, escrevê-las usando MathML trata da formatação e do significado de uma equação. MathML fornece um formato de baixo nível para descrever a matemática como base para a comunicação máquina a máquina.

Vários aplicativos como sistemas de álgebra, editores de impressão podem usar MathML para codificar notação matemática para exibição visual de alta qualidade e conteúdo matemático e software científico, sintetizadores de voz podem usar MathML para semântica.

MathML fornece duas maneiras de representar uma notação matemática.

  • Presentational Way - Ele usa marcas de marcação como mrow, mi, mo junto com operadores matemáticos etc.

  • Semantic Way - Ele usa marcas de marcação como aplicar, eq, poder etc.

Estamos usando a biblioteca MathJax para renderizar a sintaxe MathML para que possa ser executada em todos os principais navegadores. Atualmente suporta apenas a forma de apresentação.

Exemplo: Forma de Apresentação

Sintaxe

<math xmlns = "http://www.w3.org/1998/Math/MathML">
   <mrow>
      <mrow>
         <msup> <mi>x</mi> <mn>2</mn> </msup> <mo>+</mo>
         <mrow>
            <mn>4</mn>
            <mo>⁢</mo>
            <mi>x</mi>
         </mrow>
         <mo>+</mo>
         <mn>4</mn>
      </mrow>
      
      <mo>=</mo>
      <mn>0</mn>
   </mrow>
</math>

Resultado

x 2 + 4 x + 4 = 0
  • <maction> - Oferece a opção de vincular ações a subexpressões / expressões.

  • <math>- É um elemento de nível superior ou raiz e é usado para encapsular cada instância da instância MathML. Cada expressão MathML válida deve ser envolvida na tag <math> externa. Ele pode conter qualquer número de elementos filho. Um elemento matemático não pode conter outra tag de elemento matemático.

  • <menclose> - Renderiza seu conteúdo dentro de uma notação delimitadora especificada pelo atributo notation.

  • <merror> - Usado para exibir o conteúdo como mensagem de erro.

  • <mfenced> - Oferece a opção de adicionar parênteses e separadores de abertura e fechamento personalizados a uma expressão.

  • <mfrac> - Usado para exibir frações.

  • <mglyph> - Usado para exibir símbolos não padrão onde os caracteres Unicode existentes não estão disponíveis.

  • <mi> - Usado para especificar um identificador, como nome de uma variável, função ou constante, etc. Por exemplo, <mi> PI </mi>.

  • <mlabeledtr>- Usado para representar um rótulo em uma linha à esquerda ou à direita usando o atributo side de mtable. Os elementos filho de mlabeledtr devem ser elementos mtd.

  • <mmultiscripts> - Oferece opções para criar objetos semelhantes a tensores.

  • <mn> - Usado para especificar um literal numérico como 3,14 etc. Por exemplo, <mn> 3,14 </mn>.

  • <mo> - Usado para especificar um operador como +, - etc. Por exemplo, <mo> + </mo>.

  • <mover> - Usado para anexar um acento ou um limite sobre uma expressão.

  • <mpadded> - Usado para adicionar enchimento extra e definir o ajuste geral de posição e tamanho do conteúdo fechado.

  • <mphantom> - Usado para criar espaço à medida que é renderizado de forma invisível, mantendo a altura, a largura e a posição da linha de base intactas.

  • <mroot> - Usado para exibir raízes com um índice explícito.

  • <mrow> - Usado para agrupar qualquer número de subexpressões de forma horizontal.

  • <ms> - Usado para representar um literal de string para ser interpretado por linguagens de programação e sistemas de álgebra de computador.

  • <mspace> - Usado para exibir um espaço em branco, onde seu tamanho é definido usando seus atributos.

  • <msqrt> - Usado para exibir a raiz quadrada.

  • <mstyle> - Usado para aplicar o estilo em seus filhos.

  • <msub>- Usado para anexar um subscrito a uma expressão. Ele usa a seguinte sintaxe: <msub> base subscrito </msub>.

  • <msubsup>- Usado para anexar um subscrito e um sobrescrito, juntos, a uma expressão. Ele usa a seguinte sintaxe: <msubsup> base subscript superscript </msubsup>.

  • <msup>- Usado para anexar um sobrescrito a uma expressão. Ele usa a seguinte sintaxe: msup base superscript </msup>.

  • <mtable> - Oferece opções para criar tabelas ou matrizes.

  • <mtd> - Para representar uma célula em uma tabela ou matriz.

  • <mtext> - Usado para renderizar texto sem significado notacional, como comentários ou anotações.

  • <mtr> - Representa uma linha em uma tabela ou matriz.

  • <munder>- Oferece a opção de anexar um acento ou um limite sob uma expressão. Ele usa a seguinte sintaxe: <munder> base underscript </munder>

  • <munderover>- Oferece a opção de anexar acentos ou limites sob e sobre uma expressão. Ele usa a seguinte sintaxe: </munderover> base underscript sobrescrito </munderover>

  • <semantics> - <semantics>, <annotation> e <annotation-xml> são usados ​​para adicionar apresentação e marcação de conteúdo e fornece informações de layout e significado semântico de expressões matemáticas.

Existem cinco elementos básicos de uma expressão MathML.

  • <math> element- É um elemento de nível superior ou raiz e é usado para encapsular cada instância da instância MathML. Cada expressão MathML válida deve ser envolvida na tag <math> externa. Ele pode conter qualquer número de elementos filho. Um elemento matemático não pode conter outra tag de elemento matemático.

  • <mrow> element - É usado para agrupar qualquer número de subexpressões de forma horizontal.

  • <mi> element - É usado para especificar um identificador como o nome de uma variável, função ou constante, etc. Por exemplo, <mi> PI </mi>.

  • <mo> element - É usado para especificar um operador como +, - etc. Por exemplo, <mo> + </mo>.

  • <mn> element - É usado para especificar um literal numérico como 3,14 etc. Por exemplo, <mn> 3,14 </mn>.

Exemplo

Vamos construir uma equação matemática simples a + b = 5 usando a notação MathML.

Etapa 1: Identificação

Aqui a, b são variáveis. + é um operador e 5 é um número. Vamos incluí-los como <mi> a </mi>, <mi> b </mi>, <mo> + </mo> e <mn> + </mn>

Etapa 2: Construir Expressão, a + b.

Syntax

<math xmlns = "http://www.w3.org/1998/Math/MathML">
   <mrow>  
      <mi>a</mi>  
      <mo>+</mo>  
      <mi>b</mi>  
   </mrow>
</math>

Output

uma + b

Etapa 3: construir expressão, a + b = 5.

<math xmlns = "http://www.w3.org/1998/Math/MathML">
   <mrow> 
      <mrow>  
         <mi>a</mi>  
         <mo>+</mo>  
         <mi>b</mi>  
      </mrow>
      <mo>=</mo>  
      <mn>5</mn>  
   </mrow>
</math>

Output

uma + b = 5

O elemento <mscarries> pode ser usado para criar carregamentos, empréstimos e cruzamentos que ocorrem na matemática elementar. Os filhos de mscarries são associados a elementos na linha seguinte do mstack. Cada filho de mscarries exceto <mscarry> ou <nenhum> é tratado como estando implicitamente rodeado por mscarry. <nenhum> é usado quando uma coluna particular não precisa de transporte. O elemento mscarries define displaystyle parafalse, e incrementos scriptlevel por 1, portanto, os filhos são normalmente exibidos em uma fonte menor.

Sintaxe

Aqui está a sintaxe simples para usar esta tag -

<mscarries> expression <mscarry> <none/> </mscarry> </mscarries>

Parâmetros

Aqui está a descrição de todos os parâmetros desta tag -

  • expression - expressão na qual o transporte / empréstimo deve ser aplicado.

  • mscarry - transportar etiqueta.

Atributos

Aqui está a descrição de todos os atributos desta tag -

  • position - para especificar a posição horizontal das linhas dentro deste grupo em relação à posição determinada pelo msgroup que o contém.

  • location- para especificar a localização do transporte ou empréstimo em relação ao caractere abaixo dele na coluna associada. os valores são w, nw, n, ne, e, se, s, sw.

  • crossout - para especificar como o conteúdo da coluna abaixo de cada transporte é crossed out; um ou mais valores podem ser fornecidos e todos os valores são desenhados. Os valores são none, updiagonalstrike, downdiagonalstrike, verticalstrike, horizontalstrike. O padrão é nenhum.

  • scriptsizemultiplier - para especificar o fator pelo qual alterar o tamanho da fonte.

Exemplo

<math xmlns = "http://www.w3.org/1998/Math/MathML">
   <mstack>
      <mscarries crossout='updiagonalstrike'>
         <mn>2</mn>
         <mn>12</mn>  
         <mscarry crossout='none'>
            <none/> 
         </mscarry>
      </mscarries>
      <mn>2,327</mn>
      
      <msrow>
         <mo>-</mo> 
         <mn> 1,156</mn> 
      </msrow>
      <msline/>
      <mn>1,171</mn>
   </mstack>
</math>

Resultado

2 12 2.327 - 1.156 1.171

A tag <menclose> é usada para renderizar o conteúdo dentro da notação envolvente, conforme especificado por seu atributo de notação. ele aceita um único argumento como uma base inferida de vários filhos.

Sintaxe

Aqui está a sintaxe simples para usar esta tag -

<menclose> expression </menclose>

Parâmetros

Aqui está a descrição de todos os parâmetros desta tag -

  • expression - expressão.

Atributos

Aqui está a descrição de todos os atributos desta tag -

  • notation- para especificar uma lista separada por espaços de notações a serem usadas para incluir os filhos. Os valores válidos são longdiv, atuarial, phasorangle, radical, box, roundedbox, círculo, left, right, top, bottom, updiagonalstrike, downdiagonalstrike, verticalstrike, horizontalstrike, northeastarrow, madruwb, text. O padrão é longdiv.

Exemplo

<math xmlns = "http://www.w3.org/1998/Math/MathML">
   <mi>C</mi>
   <mrow>
      <menclose notation = 'phasorangle'>
         <mrow>
            <mo>−</mo>
            <mfrac>
               <mi>π</mi>
               <mn>2</mn>
            </mfrac>
         </mrow>
      </menclose>
   </mrow>
</math>

Resultado

C - π 2

A tag <mfenced> é um método conveniente para usar operadores fencing como chaves, colchetes e parênteses ao invés de usar tags <mo> para eles.

Sintaxe

Aqui está a sintaxe simples para usar esta tag -

<mfenced> expression </mfenced>

Parâmetros

Aqui está a descrição de todos os parâmetros desta tag -

  • expression - expressão.

Atributos

Aqui está a descrição de todos os atributos desta tag -

  • open- Para especificar o delimitador de abertura. O padrão é '('.

  • close- Para especificar o delimitador de fechamento. O padrão é ')'.

  • separators- Para especificar uma sequência de zero ou mais caracteres separadores, opcionalmente separados por espaços em branco. O padrão é ','.

Exemplos

Exemplo 1: sem tag <mfenced>

<math xmlns = "http://www.w3.org/1998/Math/MathML">
   <mrow>
      <mo>(</mo>
      <mi>x</mi>
      <mo>)</mo>
   </mrow>
</math>

Resultado

( x )

Exemplo 2: usando a tag <mfenced>

<math xmlns = "http://www.w3.org/1998/Math/MathML">
   <mfenced>
      <mi>x</mi>
   </mfenced>
</math>

Resultado

x

Exemplo 3: f (x, y)

<math xmlns = "http://www.w3.org/1998/Math/MathML">
   <mrow>
      <mi> f </mi>
      <mo> ⁡</mo>
      <mfenced>
         <mi> x </mi>
         <mi> y </mi>
      </mfenced>
   </mrow>
</math>

Resultado

f x y

Exemplo 4: (a + b)

<math xmlns = "http://www.w3.org/1998/Math/MathML">
   <mfenced>
      <mrow>
         <mi> a </mi>
         <mo> + </mo>
         <mi> b </mi>
      </mrow>
   </mfenced>
</math>

Resultado

uma + b

Exemplo 5: [0,1)

<math xmlns = "http://www.w3.org/1998/Math/MathML">
   <mfenced open="[">
      <mn> 0 </mn>
      <mn> 1 </mn>
   </mfenced>
</math>

Resultado

0 1

A tag <mfrac> é usada para desenhar frações.

Sintaxe

Aqui está a sintaxe simples para usar esta tag -

<mfrac> numerator denominator </mfrac>

Parâmetros

Aqui está a descrição de todos os parâmetros desta tag -

  • numerator - numerador da fração.

  • denominator - denominador da fração.

Atributos

Aqui está a descrição de todos os atributos desta tag -

  • linethickness- para especificar a largura do traço da barra de fração. os valores são medidos em px, pt, em etc.

  • numalign- para especificar o alinhamento do numerador. os valores são esquerda, direita ou centro.

  • denomalign- para especificar o alinhamento do denominador. os valores são esquerda, direita ou centro.

  • bevelled- para especificar se a fração deve ser exibida verticalmente ou embutida. os valores são verdadeiros ou falsos.

Exemplo

Vamos desenhar uma fração simples para 1 / x.

<math xmlns = "http://www.w3.org/1998/Math/MathML">
   <mfrac>
      <mn>1</mn>
      <mi>x</mi>
   </mfrac>
</math>

Resultado

1 x

Vamos construir uma fração complexa.

<math xmlns = "http://www.w3.org/1998/Math/MathML">
   <mfrac linethickness = '3px'>
      <mfrac bevelled = 'true'>
         <mn>1</mn>
         <mi>x</mi>
      </mfrac>
      
      <mrow>
         <mi>y</mi>
         <mo>-</mo>
         <mn>2</mn>
      </mrow>
   </mfrac>
</math>

Resultado

1 x y - 2

A tag <mlongdiv> é usada para desenhar divisões longas.

Sintaxe

Aqui está a sintaxe simples para usar esta tag -

<mlongdiv> divisor dividend result expression </mlongdiv>

Parâmetros

Aqui está a descrição de todos os parâmetros desta tag -

  • divisor - divisor da divisão longa.

  • dividend - dividendo da divisão longa.

  • result - resultado da longa divisão.

  • expression - elemento mstack ou filhos de mstack.

Atributos

Aqui está a descrição de todos os atributos desta tag -

  • longdivstyle- para controlar o estilo do layout de divisão longa. Os valores válidos são lefttop, stackedrightright, mediumstackedrightright, shortstackedrightright, righttop, left / \ right, left) (right,: right = right, stackedleftleft, stackedleftlinetop. O padrão é lefttop.

Exemplo

Vamos desenhar uma fração simples para 1 / x.

<math xmlns = "http://www.w3.org/1998/Math/MathML">
   <mlongdiv longdivstyle = "lefttop">
      <mn> 3 </mn>
      <mn> 435.3</mn>
      <mn> 1306</mn>
      <msgroup position = "2" shift = "-1">
         <msgroup>
            <mn> 12</mn>
            <msline length = "2"/>
         </msgroup>
         
         <msgroup>
            <mn> 10</mn>
            <mn> 9</mn>
            <msline length = "2"/>
         </msgroup>
         
         <msgroup>
            <mn> 16</mn>
            <mn> 15</mn>
            <msline length = "2"/>
            <mn> 1.0</mn>           
         </msgroup>   
         
         <msgroup position='-1'>   
            <mn> 9</mn>
            <msline length = "3"/>
            <mn> 1</mn>
         </msgroup>
      </msgroup>
   </mlongdiv>
</math>

Resultado

3 435,3 1306 12 10 9 16 15 1.0 9 1

A tag <mtable> é usada para desenhar matrizes.

Sintaxe

mtable é semelhante à tag table do HTML e essa tag usa elementos mtr, mtd que são semelhantes às tags tr e td do HTML.

<mtable> <mtr> <mtd></mtd></mtr></mfrac>

Atributos

Aqui está a descrição de todos os atributos desta tag -

  • align- Para especificar o alinhamento vertical da mesa. Os valores válidos são: eixo, linha de base, parte inferior, centro, parte superior. O padrão é eixo.

  • class, id, style - Usado com folhas de estilo.

  • columnalign- Para especificar o alinhamento horizontal das células. Os valores válidos são: esquerda, centro e direita. O padrão é center.

  • columnlines- Para especificar as bordas da coluna. Os valores válidos são: nenhum, sólido e tracejado. O padrão é nenhum.

  • columnspacing - Para especificar o espaço entre as colunas da tabela.

  • displaystyle - Se verdadeiro, mais espaço vertical é usado para as equações exibidas, se falso, um layout mais compacto é usado para exibir as fórmulas.

  • frame- Para especificar as bordas de toda a mesa. Os valores válidos são: nenhum, sólido e tracejado. O padrão é nenhum.

  • framespacing - Para especificar o espaço adicional adicionado entre a mesa e a moldura.

  • href - Para especificar um hiperlink para um uri especificado.

  • mathbackground- Para especificar a cor de fundo. Os formatos válidos são #rgb, #rrggbb e nomes de cores html.

  • mathcolor- Para especificar a cor do texto. Os formatos válidos são #rgb, #rrggbb e nomes de cores html.

  • rowalign- Para especificar o alinhamento vertical das células. Os valores válidos são eixo, linha de base, parte inferior, centro e parte superior. O padrão é linha de base

  • rowlines- Para especificar bordas de linha. Os valores válidos são: nenhum, sólido e tracejado. O padrão é nenhum.

  • width - Para especificar a largura de toda a mesa.

Exemplo

Vamos desenhar uma métrica 3 x 3.

<math xmlns = "http://www.w3.org/1998/Math/MathML">
   <mrow>
      <mo>[</mo>
      <mtable>
         <mtr>
            <mtd><mn>1</mn></mtd>
            <mtd><mn>0</mn></mtd>
            <mtd><mn>0</mn></mtd>
         </mtr>
         
         <mtr>
            <mtd><mn>0</mn></mtd>
            <mtd><mn>1</mn></mtd>
            <mtd><mn>0</mn></mtd>
         </mtr>
         
         <mtr>
            <mtd><mn>0</mn></mtd>
            <mtd><mn>0</mn></mtd>
            <mtd><mn>1</mn></mtd>
         </mtr>
      </mtable>
      <mo>]</mo>
   </mrow>
</math>

Resultado

[ 1 0 0 0 1 0 0 0 1 ]

<msgroup> é usado para agrupar linhas dentro dos elementos <mstack> e <mlongdiv> para ter uma posição relativa ao alinhamento da pilha. O elemento <msgroup> com atributo shift pode ser usado para criar multiplicações simples.

Sintaxe

Aqui está a sintaxe simples para usar esta tag -

<msgroup> expression </msgroup>

Parâmetros

Aqui está a descrição de todos os parâmetros desta tag -

  • expression - expressão.

Atributos

Aqui está a descrição de todos os atributos desta tag -

  • position- para especificar a posição horizontal das linhas dentro do grupo em relação à posição controlada pelo msgroup que o contém (de acordo com sua posição e atributos de deslocamento). O valor padrão é 0.

  • shift- para especificar uma mudança incremental de posição para filhos sucessivos (linhas ou grupos) dentro do grupo. O valor padrão é 0.

Exemplo

<math xmlns = "http://www.w3.org/1998/Math/MathML">
   <mstack>
      <msgroup>
         <mn>123</mn>
         <msrow>
            <mo>×</mo>
            <mn>321</mn>
         </msrow>
      </msgroup>
      <msline/>
      
      <msgroup shift = "1">
         <mn>123</mn>
         <mn>246</mn>
         <mn>369</mn>
      </msgroup>
      <msline/>
      <mn>39483</mn>
   </mstack>
</math>

Resultado

123 × 321 123 246 369 39483

A tag <mover> é usada para desenhar sobrescrito. Ele adiciona um acento ou um limite sobre uma expressão.

Sintaxe

Aqui está a sintaxe simples para usar esta tag -

<mover> base overscript </mover>

Parâmetros

Aqui está a descrição de todos os parâmetros desta tag -

  • base - expressão de base na qual o sobrescrito deve ser desenhado.

  • overscript - sobrescrito.

Atributos

Aqui está a descrição de todos os atributos desta tag -

  • accent- Se verdadeiro, sobrescrito é um acento e é desenhado mais perto da expressão de base. Se for falso, o over-script é um limite sobre a expressão de base. O padrão é falso.

  • align- Para especificar o alinhamento do sobrescrito. Os válidos são: esquerda, centro e direita.

  • class, id, style - Usado com folhas de estilo.

  • href - Para especificar um hiperlink para um uri especificado.

  • mathbackground- Para especificar a cor de fundo. Os formatos válidos são #rgb, #rrggbb e nomes de cores html.

  • mathcolor- Para especificar a cor do texto. Os formatos válidos são #rgb, #rrggbb e nomes de cores html.

Exemplo

Vamos desenhar um sobrescrito.

<math xmlns = "http://www.w3.org/1998/Math/MathML">
   <mover accent = "true">    
     <mrow>    
       <mi> x </mi>    
       <mo> + </mo>    
       <mi> y </mi>    
       <mo> + </mo>    
       <mi> z </mi>    
     </mrow>    
     <mo>&#x23DE;</mo>    
   </mover>
</math>

Resultado

x + y + z

O elemento <mpadded> é usado para adicionar preenchimento, ou espaço extra, ao redor de seu conteúdo. Ele pode ser usado para ajustar o tamanho e o posicionamento, por exemplo, preenchimento negativo, que pode fazer com que o conteúdo do mpadded se sobreponha à renderização do conteúdo vizinho.

Sintaxe

Aqui está a sintaxe simples para usar esta tag -

<mpadded> expression </mpadded>

Parâmetros

Aqui está a descrição de todos os parâmetros desta tag -

  • expression - resultado inferido de vários filhos.

Atributos

Aqui está a descrição de todos os atributos desta tag -

  • height - Para definir ou aumentar a altura do elemento mpadded.

  • depth - Para definir ou aumentar a profundidade do elemento mpadded.

  • width - Para definir ou aumentar a largura do elemento mpadded.

  • lspace - Para definir o espaço horizontal do conteúdo infantil.

  • voffset - Para definir o espaço vertical do conteúdo infantil.

Exemplos

Exemplo 1

<math xmlns = "http://www.w3.org/1998/Math/MathML">
   <mrow>
      <mi>x</mi>
      <mpadded lspace = "0.2em" voffset = "0.3ex">
         <mi>y</mi>
      </mpadded>
      <mi>z</mi>
   </mrow>
</math>

Resultado

x y z

Exemplo 2

<math xmlns = "http://www.w3.org/1998/Math/MathML">
   <mrow>
      <mi>x</mi>
      <mpadded width = "+90%width" height = "+0.3ex" depth = "+0.3ex">
         <mi>y</mi>
      </mpadded>
      <mi>z</mi>
   </mrow>
</math>

Resultado

x y z

Exemplo 3

<math xmlns = "http://www.w3.org/1998/Math/MathML">
   <mrow>
      <mi>x</mi>
      <mpadded lspace = "0.3em" width = "+0.6em">
         <mi>y</mi>
      </mpadded>
      <mi>z</mi>
   </mrow>
</math>

Resultado

x y z

O elemento <mphantom> é renderizado de forma invisível, mantendo o mesmo tamanho e outras dimensões, incluindo a posição da linha de base, como seu conteúdo teria se fosse renderizado normalmente. É usado para alinhar partes de uma expressão duplicando subexpressões de maneira invisível.

Sintaxe

Aqui está a sintaxe simples para usar esta tag -

<mphantom> expression </mphantom>

Parâmetros

Aqui está a descrição de todos os parâmetros desta tag -

  • expression - resultado inferido de vários filhos.

Atributos

Aqui está a descrição de todos os atributos desta tag -

  • mathbackground- Para especificar a cor de fundo. Os formatos válidos são #rgb, #rrggbb e nomes de cores html.

Exemplos

<math xmlns = "http://www.w3.org/1998/Math/MathML">
   <mfrac>
      <mrow>
         <mi> x </mi>
         <mo> + </mo>
         <mi> y </mi>
         <mo> + </mo>
         <mi> z </mi>
      </mrow>
      
      <mrow>
         <mi> x </mi>
         <mphantom>
            <mo> + </mo>
         </mphantom>
         
         <mphantom>
            <mi> y </mi>
         </mphantom>
         <mo> + </mo>
         <mi> z </mi>
      </mrow>
   </mfrac>
</math>

Resultado

x + y + z x + y + z

Os elementos msqrt e mroot constroem radicais. O elemento msqrt constrói raízes quadradas, enquanto o elemento mroot constrói radicais com índices, por exemplo, uma raiz cúbica.

elemento <msqrt>

A tag <msqrt> é usada para desenhar a raiz quadrada.

Sintaxe

Aqui está a sintaxe simples para usar esta tag -

<msqrt> base </msqrt>

Parâmetros

Aqui está a descrição de todos os parâmetros desta tag -

  • base - expressão de base na qual a raiz quadrada deve ser desenhada.

Atributos

Aqui está a descrição de todos os atributos desta tag -

  • mathbackground- Para especificar a cor de fundo. Os formatos válidos são #rgb, #rrggbb e nomes de cores html.

  • mathcolor- Para especificar a cor do texto. Os formatos válidos são #rgb, #rrggbb e nomes de cores html.

Exemplo

Vamos desenhar uma raiz quadrada.

<math xmlns = "http://www.w3.org/1998/Math/MathML">
   <msqrt>  
      <mn>4</mn>  
   </msqrt>
</math>

Resultado

4

elemento <mroot>

A tag <mroot> é usada para desenhar radicais com índices.

Sintaxe

Aqui está a sintaxe simples para usar esta tag -

<mroot> base index </mroot>

Parâmetros

Aqui está a descrição de todos os parâmetros desta tag -

  • base - expressão de base na qual a raiz quadrada deve ser desenhada.

  • index - índice da raiz a ser desenhada.

Atributos

Aqui está a descrição de todos os atributos desta tag -

  • mathbackground- Para especificar a cor de fundo. Os formatos válidos são #rgb, #rrggbb e nomes de cores html.

  • mathcolor- Para especificar a cor do texto. Os formatos válidos são #rgb, #rrggbb e nomes de cores html.

Exemplo

Vamos desenhar uma raiz cúbica.

<math xmlns = "http://www.w3.org/1998/Math/MathML">
   <mroot>  
      <mn>8</mn>  
      <mn>3</mn>  
   </mroot>
</math>

Resultado

8 3

Os números decimais com dígito (s) que se repetem infinitamente, como 1/3 (0,3333 ...), são representados colocando uma linha horizontal acima ou abaixo dos dígitos que se repetem. Os elementos <mstack>, <msrow> e <msline> podem ser usados ​​para criar números decimais com dígitos repetidos, conforme mostrado abaixo.

Exemplo

Exemplo 1

<math xmlns = "http://www.w3.org/1998/Math/MathML">
   <mstack stackalign = "right">
      <msline length = "1"/>
      <mn> 0.3333 </mn>
   </mstack>
</math>

Resultado

0,3333

Exemplo 2

<math xmlns = "http://www.w3.org/1998/Math/MathML">
   <mstack stackalign="right">
      <msline length="6"/>
      <mn> 0.142857 </mn>
   </mstack>
</math>

Resultado

0,142857

Exemplo 3

<math xmlns = "http://www.w3.org/1998/Math/MathML">
   <mstack stackalign="right">   
      <mn> 0.142857 </mn>
      <msline length="6"/>
   </mstack>
</math>

Resultado

0,142857

A tag <mstyle> é usada para fazer mudanças de estilo que afetam a renderização de seu conteúdo.

Sintaxe

Aqui está a sintaxe simples para usar esta tag -

<mstyle> expression </mstyle>

Parâmetros

Aqui está a descrição de todos os parâmetros desta tag -

  • expression - elementos de corte inferidos.

Atributos

Aqui está a descrição de todos os atributos desta tag -

  • scriptlevel- Para especificar o nível de script para os filhos. Sem um sinal, ele define scriptlevel com o valor especificado; Com um sinal, ele aumenta ("+") ou diminui ("-") o valor atual.

  • displaystyle - Para especificar o estilo de exibição.

  • scriptsizemultiplier - Para especificar o multiplicador a ser usado para ajustar o tamanho da fonte devido às mudanças no nível do script.

  • scriptminsize - Para especificar o tamanho mínimo da fonte permitido devido às mudanças no nível do script.

  • infixlinebreakstyle - Para especificar o estilo de quebra de linha padrão a ser usado para operadores infixos.

  • decimalpoint- Para especificar o caractere usado para determinar o ponto de alinhamento nas colunas <mstack> e <mtable> quando o valor "ponto decimal" é usado para especificar o alinhamento. O padrão é '.'.

Exemplos

Exemplo 1: sem tag <mstyle>

<math xmlns = "http://www.w3.org/1998/Math/MathML">
   <mrow>
      <mo maxsize = "100%"> ( </mo>
      <mfrac> 
         <mi> a </mi> 
         <mi> b </mi> 
      </mfrac>
      <mo maxsize = "100%"> ) </mo>
   </mrow>
</math>

Resultado

( uma b )

Exemplo 2: usando a tag <mstyle>

<math xmlns = "http://www.w3.org/1998/Math/MathML">
   <mstyle maxsize = "100%">
      <mrow>
         <mo> ( </mo>
         <mfrac> 
            <mi> a </mi> 
            <mi> b </mi> 
         </mfrac>
         <mo> ) </mo>
      </mrow>
   </mstyle>
</math>

Resultado

( uma b )

A tag <msub> é usada para desenhar subscrito para uma expressão.

Sintaxe

Aqui está a sintaxe simples para usar esta tag -

<msub> base subscript </msub>

Parâmetros

Aqui está a descrição de todos os parâmetros desta tag -

  • base - expressão de base na qual o subscrito deve ser desenhado.

  • subscript - subscrito.

Atributos

Aqui está a descrição de todos os atributos desta tag -

  • subscriptshift - Para especificar o espaço mínimo para deslocar o subscrito abaixo da linha de base da expressão.

  • class, id, style - Usado com folhas de estilo.

  • href - Para especificar um hiperlink para um uri especificado.

  • mathbackground- Para especificar a cor de fundo. Os formatos válidos são #rgb, #rrggbb e nomes de cores html.

  • mathcolor- Para especificar a cor do texto. Os formatos válidos são #rgb, #rrggbb e nomes de cores html.

Exemplo

Vamos desenhar um subscrito.

<math xmlns = "http://www.w3.org/1998/Math/MathML">
   <msub>  
      <mi>x</mi>  
      <mn>1</mn>  
   </msub>
</math>

Resultado

x 1

A tag <msubsup> é usada para anexar subscrito e sobrescrito a uma expressão.

Sintaxe

Aqui está a sintaxe simples para usar esta tag -

<msubsup> base subscript superscript</msubsup>

Parâmetros

Aqui está a descrição de todos os parâmetros desta tag -

  • base - expressão de base na qual o subscrito e o sobrescrito devem ser desenhados.

  • subscript - subscrito.

  • superscript - sobrescrito.

Atributos

Aqui está a descrição de todos os atributos desta tag -

  • subscriptshift - Para especificar o espaço mínimo para deslocar o subscrito abaixo da linha de base da expressão.

  • superscriptshift - Para especificar o espaço mínimo para deslocar o sobrescrito acima da linha de base da expressão.

Exemplo

Vamos desenhar um subscrito e um sobrescrito.

<math xmlns = "http://www.w3.org/1998/Math/MathML">
   <mrow>
      <msubsup>
         <mo> ∫</mo>
         <mn> 0 </mn>
         <mn> 1 </mn>
      </msubsup>
      
      <mrow>
         <msup>
            <mi> e</mi>
            <mi> x </mi>
         </msup>
         <mo> ⁢</mo>
         
         <mrow>
            <mi> d</mi>
            <mi> x </mi>
         </mrow>
      </mrow>
   </mrow>
</math>

Resultado

0 1 e x d x

A tag <msup> é usada para desenhar sobrescrito para uma expressão.

Sintaxe

Aqui está a sintaxe simples para usar esta tag -

<msup> base superscript </msup>

Parâmetros

Aqui está a descrição de todos os parâmetros desta tag -

  • base - expressão de base na qual o sobrescrito deve ser desenhado.

  • superscript - sobrescrito.

Atributos

Aqui está a descrição de todos os atributos desta tag -

  • superscriptshift - Para especificar o espaço mínimo para deslocar o sobrescrito acima da linha de base da expressão.

  • class, id, style - Usado com folhas de estilo.

  • href - Para especificar um hiperlink para um uri especificado.

  • mathbackground- Para especificar a cor de fundo. Os formatos válidos são #rgb, #rrggbb e nomes de cores html.

  • mathcolor- Para especificar a cor do texto. Os formatos válidos são #rgb, #rrggbb e nomes de cores html.

Exemplo

Vamos desenhar um sobrescrito.

<math xmlns = "http://www.w3.org/1998/Math/MathML">
   <msup>  
      <mi>x</mi>  
      <mn>1</mn>  
   </msup>
</math>

Resultado

x 1

Agrupando subexpressões

Use mrow para adicionar subexpressões em sobrescritos.

<math xmlns = "http://www.w3.org/1998/Math/MathML">
   <msup>  
      <mi>e</mi>  
      <mrow>  
         <mn>2</mn>  
         <mi>x</mi>  
         <mo>+</mo>  
         <mn>1</mn>  
      </mrow>   
   </msup>
</math>

Resultado

e 2 x + 1

A tag <munder> é usada para desenhar o sublinhado. Ele adiciona um acento ou um limite em uma expressão.

Sintaxe

Aqui está a sintaxe simples para usar esta tag -

<munder> base underscript </munder>

Parâmetros

Aqui está a descrição de todos os parâmetros desta tag -

  • base - expressão de base na qual o sublinhado deve ser desenhado.

  • underscript - sublinhado.

Atributos

Aqui está a descrição de todos os atributos desta tag -

  • accentunder- Se verdadeiro, under-script é um acento e é desenhado mais perto da expressão de base. Se for falso, o under-script é um limite sobre a expressão de base. O padrão é falso.

  • align- Para especificar o alinhamento do under-script. Os válidos são: esquerda, centro e direita.

  • class, id, style - Usado com folhas de estilo.

  • href - Para especificar um hiperlink para um uri especificado.

  • mathbackground- Para especificar a cor de fundo. Os formatos válidos são #rgb, #rrggbb e nomes de cores html.

  • mathcolor- Para especificar a cor do texto. Os formatos válidos são #rgb, #rrggbb e nomes de cores html.

Exemplo

Vamos desenhar um sublinhado.

<math xmlns = "http://www.w3.org/1998/Math/MathML">
   <munder accent="true">    
     <mrow>    
       <mi> x </mi>    
       <mo> + </mo>    
       <mi> y </mi>    
       <mo> + </mo>    
       <mi> z </mi>    
     </mrow>    
     <mo>&#x23F;</mo>    
   </munder>
</math>

Resultado

x + y + z ȿ

A tag <munderover> é usada para desenhar sobre e sob o sublinhado. Ele adiciona um acento ou um limite acima e abaixo de uma expressão.

Sintaxe

Aqui está a sintaxe simples para usar esta tag -

<munderover> base underscript overscript </munderover>

Parâmetros

Aqui está a descrição de todos os parâmetros desta tag -

  • base - expressão de base na qual o sublinhado deve ser desenhado.

  • underscript - sublinhado.

  • overscript - sobrescrito.

Atributos

Aqui está a descrição de todos os atributos desta tag -

  • accent- Se verdadeiro, sobrescrito é um acento e é desenhado mais perto da expressão de base. Se for falso, o over-script é um limite sobre a expressão de base. O padrão é falso.

  • accentunder- Se verdadeiro, under-script é um acento e é desenhado mais perto da expressão de base. Se for falso, o under-script é um limite sobre a expressão de base. O padrão é falso.

  • align- Para especificar o alinhamento do under-script. Os válidos são: esquerda, centro e direita. O padrão é center.

Exemplo

Vamos desenhar um sublinhado.

<math xmlns = "http://www.w3.org/1998/Math/MathML">
   <mrow>
      <munderover>
         <mo> &#x222B;</mo>
         <mn> 0 </mn>
         <mi> &#x221E;</mi>
      </munderover>
   </mrow>
</math>

Resultado

0

A seguir está uma lista de símbolos de álgebra disponíveis em MathML.

Símbolo MathML Entidade HTML Código Hex Descrição
- &menos; & # x2212; Para especificar a subtração
× & times; & # x00d7; Para especificar a multiplicação
÷ &dividir; & # x00f7; Para especificar a divisão
& ne; & # x2260; Para especificar diferente de
& asymp; & # x2248; Para especificar aproximadamente igual
< & lt; & # x003c; Para especificar menos que
& le; & # x2264; Para especificar menor ou igual
> & gt; & # x003e; Para especificar maior que
& ge; & # x2265; Para especificar maior ou igual
± & plusmn; & # x00b1; Para especificar mais ou menos
&suporte; & # x221d; Para especificar proporcional a
&soma; & # x2211; Para especificar a soma
& prod; & # x220f; Para especificar o produto
& lfloor; & # x230a; Para especificar o andar esquerdo
& rfloor; & # x230b; Para especificar o andar certo
& lceil; & # x2308; Para especificar o teto esquerdo
& rceil; & # x2309; Para especificar o teto correto

A seguir está uma lista de símbolos de cálculo disponíveis no MathML.

Símbolo MathML Entidade HTML Código Hex Descrição
& prime; & # x2032; Prime (1ª derivada)
& prime; & # x2033; Primo duplo (2ª derivada)
& tprime; & # x2034; Triple prime (3ª derivada)
&parte; & # x2202; Para especificar diferencial parcial
δ δ & # x0394; Para especificar o incremento
& del; & # x2207; Para especificar gradiente
& int; & # x222b; Para especificar integral
& int; & # x222c; Para especificar integral duplo
&matiz; & # x222d; Para especificar integral triplo
& qint; & # x2a0c; Para especificar integral quádrupla
& conint; & # x222e; Para especificar o contorno integral
& cwconint; & # x2232; Para especificar a integral de contorno no sentido horário
& awconint; & # x2233; Para especificar o contorno anti-horário integral
& conint; & # x222f; Para especificar a integral da superfície
& cconint; & # x2230; Para especificar o volume integral
& infin; & # x221e; Para especificar o infinito

A seguir está uma lista de símbolos de elipses disponíveis no MathML.

Símbolo MathML Entidade HTML Código Hex Descrição
& hellip; & # x2026; Para especificar reticências horizontais
& vellip; & # x22ee; Para especificar reticências verticais
& ctdot; & # x22ef; Para especificar reticências horizontais de linha média
& utdot; & # x22f0; Para especificar reticências diagonais
& dtdot; & # x22f1; Para especificar reticências diagonais completas

A seguir está uma lista de símbolos de função disponíveis no MathML.

Símbolo MathML Entidade HTML Código Hex Descrição
& sdot; & # x22c5; Para especificar o produto escalar
&Cruz; & # x2a2f; Para especificar produto cruzado
& vert; & # x2016; Para especificar barras de norma (magnitude)
& lang; & # x27e8; Para especificar o colchete angular esquerdo
&tocou; & # x27e9; Para especificar o colchete angular direito
& compfn; & # x2218; Para especificar a composição da função
& rarr; & # x2192; Para especificar o mapeamento de função geral
& mapsto; & # x21a6; Para especificar o mapeamento de função concreta
Eu & imath; & # x0131; Para especificar i sem ponto
ȷ & jmath; & # x0237; Para especificar j sem ponto

A seguir está uma lista de símbolos de geometria disponíveis no MathML.

Símbolo MathML Entidade HTML Código Hex Descrição
° & deg; & # x00b0; Para especificar graus
& ang; & # x2220; Para especificar o ângulo
& angmsd; & # x2221; Para especificar o ângulo medido
& angrt; & # x221f; Para especificar o ângulo reto
& vangrt; & # x299c; Para especificar o ângulo reto com quadrado
& lrtri; & # x22bf; Para especificar o triângulo retângulo
& cir; & # x25cb; Para especificar o círculo
& xutri; & # x25b3; Para especificar triângulo
& squ; & # x25a1; Para especificar o quadrado
& fltns; & # x25b1; Para especificar paralelogramo
& spar; & # x2225; Para especificar paralelo
& npar; & # x2226; Para especificar não paralelo
& perp; & # x22a5; Para especificar perpendicular
& cong; & # x2245; Para especificar congruente
& rarr; & # x2192; Para especificar o raio (usado com <mover>)
& harr; & # x2194; Para especificar a linha (usado com <mover>)
- (n / D) & # x002d; Para especificar o segmento de linha (usado com <mover>)

A seguir está uma lista de letras gregas disponíveis em MathML.

Letra maiúscula (C) Letras pequenas) Entidades (C) Entidades (S) Códigos hexadecimais (C) Códigos hexadecimais (S)
Α α &alfa; &alfa; & # x0391; & # x03b1;
Β β β β & # x0392; & # x03b2;
Γ γ &gama; &gama; & # x0393; & # x03b3;
Δ δ δ δ & # x0394; & # x03b4;
Ε ε & epsilon; & epsilon; & # x0395; & # x03b5;
Ζ ζ & zeta; & zeta; & # x0396; & # x03b6;
Η η & eta; & eta; & # x0397; & # x03b7;
Θ θ & theta; & theta; & # x0398; & # x03b8;
Ι ι ι ι & # x0399; & # x03b9;
Κ κ & kappa; & kappa; & # x039a; & # x03ba;
Λ λ & lambda; & lambda; & # x039b; & # x03bb;
Μ µ & mu; & mu; & # x039c; & # x03bc;
Ν ν & nu; & nu; & # x039d; & # x03bd;
Ξ ξ &XI; &XI; & # x039e; & # x03be;
Ο ο & omicron; & omicron; & # x039f; & # x03bf;
Π π & pi; & pi; & # x03a0; & # x03c0;
Ρ ρ & rho; & rho; & # x03a1; & # x03c1;
Σ σ & sigma; & sigma; & # x03a3; & # x03c3;
Τ τ & tau; & tau; & # x03a4; & # x03c4;
Υ υ & upsilon; & upsilon; & # x03a5; & # x03c5;
Φ φ & phi; & phi; & # x03a6; & # x03c6;
Χ χ & chi; & chi; & # x03a7; & # x03c7;
Ψ ψ & psi; & psi; & # x03a8; & # x03c8;
Ω ω &ómega; &ómega; & # x03a9; & # x03c9;

A seguir está uma lista de operadores invisíveis disponíveis no MathML.

Entidade Entidade curta Hex Descrição
& applyfunction; & af; & # x2061; É usado para especificar a aplicação da função
& invisibletimes; &isto; & # x2062; É usado para especificar multiplicação invisível
& invisiblecomma; & ic; & # x2063; É usado para especificar o separador invisível
(n / D) (n / D) & # x2064; É usado para especificar adição invisível

A seguir está uma lista de símbolos lógicos disponíveis no MathML.

Símbolo MathML Entidade HTML Código Hex Descrição
¬ &não; & # x00ac; Para especificar a negação
&e; & # x2227; Para especificar a conjunção lógica
&ou; & # x2228; Para especificar disjunção lógica
& veebar; & # x22bb; Para especificar disjunção exclusiva
¶ todos; & # x2200; Para especificar a quantificação universal
&existir; & # x2203; Para especificar a quantificação existencial
& rarr; & # x21d2; Para especificar a implicação material
& harr; & # x21d4; Para especificar a equivalência do material
& emptysmallsquare; & # x25fb; Para especificar necessariamente
& loz; & # x25ca; Para especificar possivelmente
& vdash; & # x22a2; Para especificar provável
& vdash; & # x22a8; Especificar implica
& there4; & # x2234; Para especificar portanto

A seguir está uma lista de conjuntos de símbolos disponíveis no MathML.

Símbolo MathML Entidade HTML Código Hex Descrição
&vazio; & # x2205; Para especificar o conjunto vazio
&é em; & # x2208; Para especificar o membro do conjunto
&não em; & # x2209; Ele especifica que não é membro do conjunto
& sube; & # x2286; Para especificar um subconjunto
& nsube; & # x2288; Para especificar não um subconjunto
& # x2282; Para especificar um subconjunto estrito
& nsub; & # x2284; Para especificar um subconjunto não estrito
& supe; & # x2287; Para especificar um superconjunto
& nsupe; & # x2289; Para especificar não um superconjunto
& sup; & # x2283; Para especificar superconjunto estrito
& nsup; & # x2285; Para especificar não um superconjunto estrito
&boné; & # x2229; Para especificar a interseção
&copo; & # x222a; Para especificar união
& ssetmn; & # x2216; Para especificar complemento