MATHML DOCS

MATHML-INTRODUCTION

MathML Namespace
Description: Deklarasi namespace MathML yang harus ada pada elemen <math>.
Example:
<math xmlns="http://www.w3.org/1998/Math/MathML">...</math>
Output: Browser mengenali sebagai MathML
Presentation MathML
Description: Markup untuk menampilkan notasi matematika (fokus pada tampilan, bukan makna semantik).
Example:
<math><mi>x</mi><mo>+</mo><mn>2</mn></math>
Output: x + 2
Content MathML
Description: Markup yang merepresentasikan makna matematika, bukan tampilan. Digunakan untuk komputasi.
Example:
<math><apply><plus/><ci>x</ci><cn>2</cn></apply></math>
Output: x + 2 (dengan semantik)

PRESENTATION-ELEMENTS

<mi> – Identifier
Description: Menampilkan variabel atau nama fungsi (huruf miring secara default).
Example:
<mi>x</mi>
Output: x (italic)
<mn> – Number
Description: Menampilkan angka (tegak secara default).
Example:
<mn>123</mn>
Output: 123
<mo> – Operator
Description: Menampilkan operator (+, −, ×, =, dll). Spasi otomatis disesuaikan.
Example:
<mo>=</mo>
Output: =
<mtext> – Text
Description: Menampilkan teks biasa di dalam ekspresi.
Example:
<mtext>sehingga</mtext>
Output: sehingga
<mrow> – Row
Description: Mengelompokkan beberapa elemen secara horizontal.
Example:
<mrow><mi>x</mi><mo>+</mo><mn>1</mn></mrow>
Output: x + 1
<msup> – Superscript
Description: Menempatkan elemen sebagai tika atas (pangkat).
Example:
<msup><mi>x</mi><mn>2</mn></msup>
Output:
<msub> – Subscript
Description: Menempatkan elemen sebagai tika bawah (indeks).
Example:
<msub><mi>x</mi><mn>1</mn></msub>
Output: x₁
<msubsup> – Subscript & Superscript
Description: Gabungan subscript dan superscript.
Example:
<msubsup><mi>∫</mi><mn>0</mn><mn>1</mn></msubsup>
Output: Integral dengan batas bawah 0 dan atas 1
<mfrac> – Fraction
Description: Menampilkan pecahan. Anak pertama pembilang, kedua penyebut.
Example:
<mfrac><mn>1</mn><mn>2</mn></mfrac>
Output: ½
<msqrt> – Square Root
Description: Akar kuadrat.
Example:
<msqrt><mn>9</mn></msqrt>
Output: √9
<mroot> – Root dengan indeks
Description: Akar dengan indeks tertentu.
Example:
<mroot><mn>27</mn><mn>3</mn></mroot>
Output: ∛27
<mfenced> (deprecated)
Description: Tanda kurung otomatis. Gunakan <mrow> dengan <mo>(</mo>...<mo>)</mo>.
Example:
<mrow><mo>(</mo><mi>x</mi><mo>)</mo></mrow>
Output: (x)
<mtable> – Table
Description: Membuat tabel atau matriks.
Example:
<mtable><mtr><mtd><mn>1</mn></mtd><mtd><mn>2</mn></mtd></mtr></mtable>
Output: Matriks 1×2
<mtr> – Table Row
Description: Baris dalam <mtable>.
Example:
<mtr><mtd><mn>1</mn></mtd></mtr>
Output: Baris tabel
<mtd> – Table Data
Description: Sel dalam <mtable>.
Example:
<mtd><mn>42</mn></mtd>
Output: Sel berisi 42
<mover> – Overscript
Description: Menempatkan elemen di atas (contoh: vektor, garis).
Example:
<mover><mi>x</mi><mo>→</mo></mover>
Output: x dengan panah di atas
<munder> – Underscript
Description: Menempatkan elemen di bawah (contoh: limit).
Example:
<munder><mo>lim</mo><mrow><mi>x</mi><mo>→</mo><mn>0</mn></mrow></munder>
Output: limit x→0
<munderover> – Under & Over
Description: Gabungan underscript dan overscript.
Example:
<munderover><mo>∑</mo><mrow><mi>i</mi><mo>=</mo><mn>1</mn></mrow><mi>n</mi></munderover>
Output: Sigma i=1 sampai n
<mspace> – Space
Description: Menambahkan spasi dengan lebar tertentu.
Example:
<mspace width="10px"/>
Output: Spasi 10px
<mpadded> – Padding/Adjustment
Description: Menyesuaikan ukuran dan posisi elemen.
Example:
<mpadded width="+20px"><mi>x</mi></mpadded>
Output: x dengan padding 20px
<mphantom> – Phantom
Description: Elemen tidak terlihat tetapi tetap memakan ruang.
Example:
<mphantom><mi>x</mi></mphantom>
Output: Ruang kosong seukuran x
<menclose> – Enclose
Description: Menggambar notasi di sekeliling (lingkaran, kotak, coret, dll).
Example:
<menclose notation="circle"><mi>x</mi></menclose>
Output: x dilingkari
<maction> – Action
Description: Menambahkan interaktivitas (toggle, tooltip, statusline).
Example:
<maction actiontype="toggle"><mi>X</mi><mtext>Terpilih</mtext></maction>
Output: Klik X berubah teks

CONTENT-ELEMENTS

<apply>
Description: Menerapkan operator atau fungsi ke argumen.
Example:
<apply><plus/><ci>x</ci><cn>2</cn></apply>
Output: x + 2
<plus/>
Description: Operator penjumlahan.
Example:
<plus/>
Output: +
<minus/>
Description: Operator pengurangan.
Example:
<minus/>
Output:
<times/>
Description: Operator perkalian.
Example:
<times/>
Output: ×
<divide/>
Description: Operator pembagian.
Example:
<divide/>
Output: ÷
<power/>
Description: Operator pangkat.
Example:
<apply><power/><ci>x</ci><cn>2</cn></apply>
Output: x^2
<root/>
Description: Akar dengan indeks opsional.
Example:
<apply><root/><degree><cn>3</cn></degree><cn>27</cn></apply>
Output: ∛27
<ci> – Content Identifier
Description: Variabel dalam Content MathML.
Example:
<ci>x</ci>
Output: x (semantik)
<cn> – Content Number
Description: Angka dalam Content MathML.
Example:
<cn>42</cn>
Output: 42 (semantik)
<eq/>
Description: Operator sama dengan.
Example:
<apply><eq/><ci>x</ci><cn>0</cn></apply>
Output: x = 0
<sin/>, <cos/>, <tan/>
Description: Fungsi trigonometri.
Example:
<apply><sin/><ci>x</ci></apply>
Output: sin(x)
<log/>
Description: Fungsi logaritma.
Example:
<apply><log/><ci>x</ci></apply>
Output: log(x)
<int/>
Description: Integral.
Example:
<apply><int/><bvar><ci>x</ci></bvar><cn>0</cn><cn>1</cn></apply>
Output: ∫₀¹ x dx
<sum/>
Description: Sigma (penjumlahan berulang).
Example:
<apply><sum/><bvar><ci>i</ci></bvar><cn>1</cn><ci>n</ci><ci>i</ci></apply>
Output: ∑ᵢ₌₁ⁿ i

MATHML-ATTRIBUTES

mathvariant
Description: Gaya varian huruf (normal, bold, italic, double-struck, script, fraktur, sans-serif, monospace).
Example:
<mi mathvariant="bold">x</mi>
Output: x tebal
displaystyle
Description: Tampilan penuh (true) atau inline (false).
Example:
<mstyle displaystyle="true"><mfrac><mn>1</mn><mn>2</mn></mfrac></mstyle>
Output: Pecahan besar
scriptlevel
Description: Menentukan tingkat script untuk sub/superscript.
Example:
<mstyle scriptlevel="1">...</mstyle>
Output: Lebih kecil
mathsize
Description: Ukuran font (small, normal, big, atau nilai numerik).
Example:
<mi mathsize="big">A</mi>
Output: A besar
mathcolor
Description: Warna elemen.
Example:
<mi mathcolor="red">x</mi>
Output: x merah
mathbackground
Description: Warna latar belakang elemen.
Example:
<mi mathbackground="yellow">x</mi>
Output: Latar kuning
linethickness
Description: Ketebalan garis pecahan (dalam <mfrac>).
Example:
<mfrac linethickness="2px"><mn>1</mn><mn>2</mn></mfrac>
Output: Garis tebal

ACCESSIBILITY-MATHML

alttext
Description: Teks alternatif untuk ekspresi MathML (accessibility).
Example:
<math alttext="x squared plus y squared equals z squared"><msup><mi>x</mi><mn>2</mn></msup><mo>+</mo><msup><mi>y</mi><mn>2</mn></msup><mo>=</mo><msup><mi>z</mi><mn>2</mn></msup></math>
Output: Dibacakan screen reader
Semantic enrichment
Description: Menggabungkan Presentation dan Content MathML untuk aksesibilitas dan komputasi.
Example:
<semantics><mrow>...</mrow><annotation-xml encoding="MathML-Content"><apply>...</apply></annotation-xml></semantics>
Output: Dua representasi
role="math"
Description: Atribut ARIA untuk memberi tahu bahwa elemen adalah matematika.
Example:
<div role="math" aria-label="x squared"><math>...</math></div>
Output: Peran matematika

INTEGRATING-HTML

Langsung di HTML5
Description: Elemen <math> dapat langsung digunakan dalam HTML5 tanpa plugin.
Example:
<!DOCTYPE html><html><body><math xmlns="..."><mi>x</mi></math></body></html>
Output: Render di browser
MathJax
Description: Library JavaScript untuk rendering MathML dan LaTeX di semua browser.
Example:
<script src="https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js"></script>
Output: MathML/LaTeX dirender indah
KaTeX
Description: Library rendering cepat untuk LaTeX, mendukung subset MathML.
Example:
<link rel="stylesheet" href="katex.min.css"><script src="katex.min.js"></script>
Output: Render LaTeX cepat