MathML コア
MathML Core

W3C草案
W3C Working Draft

この文書についてのより詳細な情報
More details about this document
この文書のヴァージョン:
This version:
https://www.w3.org/TR/2023/WD-mathml-core-20231127/
最新公開ヴァージョン:
Latest published version:
https://www.w3.org/TR/mathml-core/
最新の編集者草案:
Latest editor's draft:
https://w3c.github.io/mathml-core/
履歴:
History:
https://www.w3.org/standards/history/mathml-core/
Commit history
テストツール:
Test suite:
https://github.com/web-platform-tests/wpt/tree/master/mathml/
実装の報告書:
Implementation report:
https://wpt.fyi/results/?label=master&label=experimental&aligned&q=math%20%20not%28path%3A%2Fjs%29
編集者:
Editors:
David Carlisle (NAG(訳注:ニューメリカルアルゴリズムグループ))
David Carlisle (NAG)
Frédéric Wang (Igalia)
Frédéric Wang (Igalia)
以前の編集者:
Former editors:
Patrick Ion (アメリカ数学会 Mathematical Reviews(訳注:アメリカ数学会が発行している書誌情報データベース))
Patrick Ion (Mathematical Reviews, American Mathematical Society)
Robert Miner (故人) (Design Science社)
Robert Miner (deceased) (Design Science, Inc.)
意見:
Feedback:
GitHub w3c/mathml-core (pull requests, new issue, open issues)

概要
Abstract

この仕様書は, 数学用マークアップ言語またはMathMLの, ブラウザの実装に適した中核部分を定義しています. MathMLは, 数学表記を記述したり, その構造と意味の両方をうまく再現するマークアップ言語です. MathMLの目標は, HTMLが文章に対してできるようにしたように, 数学をワールド・ワイド・ウェブ上で提供したり, 受け取ったり, 処理したりできるようにすることです.

This specification defines a core subset of Mathematical Markup Language, or MathML, that is suitable for browser implementation. MathML is a markup language for describing mathematical notation and capturing both its structure and content. The goal of MathML is to enable mathematics to be served, received, and processed on the World Wide Web, just as HTML has enabled this functionality for text.

この文書の位置付け
Status of This Document

この節では, 公表された時点でのこの文書の位置付けについて述べます. 最新のW3Cの公表した文書のリストやこの技術報告書の最新版は, W3C技術報告書の索引(http://www.w3.org/TR/)で見ることができます.

This section describes the status of this document at the time of its publication. A list of current W3C publications and the latest revision of this technical report can be found in the W3C technical reports index at https://www.w3.org/TR/.

この文書は, 数学作業部会によって, 勧告工程に従って, 草案として発行されました.

This document was published by the Math Working Group as a Working Draft using the Recommendation track.

草案としての発行は, W3Cおよびその会員による支持を意味していません.

Publication as a Working Draft does not imply endorsement by W3C and its Members.

この文書は草案であり, いつでも他の文書によって更新されたり, 置き換えられたり, 使われなくなったりするかもしれません. 作業の経過によらず, この文書を掲載することが不適当になります.

This is a draft document and may be updated, replaced or obsoleted by other documents at any time. It is inappropriate to cite this document as other than work in progress.

この文書は, W3C特許指針の下で運営している作業部会によって作成されました. W3Cは, この作業部会の成果に関連して作成された特許開示の公開一覧を管理しています. この一覧のページは, 特許を開示する場合の指示書きを含んでいます. 特許について実際に生じている情報を持っている方は, その情報が本質的な主張(訳注:当該日本語訳では"Essential Claim"の日本語訳に"本質的な主張"を当てていますが, "Essential Claim"という用語はW3C特許指針で定義された用語です.)に当たると思われる場合, W3C特許指針の第6節に従って必ずその情報を開示して下さい.

This document was produced by a group operating under the W3C Patent Policy. W3C maintains a public list of any patent disclosures made in connection with the deliverables of the group; that page also includes instructions for disclosing a patent. An individual who has actual knowledge of a patent which the individual believes contains Essential Claim(s) must disclose the information in accordance with section 6 of the W3C Patent Policy.

この文書は, 2023年11月3日版のW3C手続き文書により決定されました.

This document is governed by the 03 November 2023 W3C Process Document.

1. 導入
Introduction

この節は規範ではありません.

This section is non-normative.

[MATHML3]仕様書は, ウェブ描画プログラムを横断して一貫した実装を行うことや, 利用者が定義した構造と一緒に拡張することを困難にする様々な欠点を持っています. 例えば, 次のものです.

The [MATHML3] specification has several shortcomings that make it hard to implement consistently across web rendering engines or to extend with user-defined constructions, e.g.:

このMathMLコア仕様書は, TeXBookの付録[TEXBOOK]やOpen Font Format [OPEN-FONT-FORMAT]からの追加の決まりを用いることで, 数式の視覚的表現において可能な限り正確にすることで, これらの課題に取り組むつもりです. この仕様書は, ウェブプラットフォームの層を改良する新しいコンピュータ寄りの基本要素を必要としたり, 導入したりするときに, 最新のブラウザの実装やウェブ技術との相互作用を明確にする, 実装や技術[HTML][SVG] [CSS2] [DOM]に頼っています.

This MathML Core specification intends to address these issues by being as accurate as possible on the visual rendering of mathematical formulas using additional rules from the TeXBook’s Appendix G [TEXBOOK] and from the Open Font Format [OPEN-FONT-FORMAT], [OPEN-TYPE-MATH-ILLUMINATED]. It also relies on modern browser implementations and web technologies [HTML] [SVG] [CSS2] [DOM], clarifying interactions with them when needed or introducing new low-level primitives to improve the web platform layering.

この枠組みと上手く整合しない, またはあまり基本的でないMathML3の部分は, 省略されました. 代わりに, それらの部分は, 分割されたより大きな[MATHML4]仕様書で説明しています. どの数学機能が, MathMLコアの将来のヴァージョンに含まれたり, ポリフィルとして実装されたりするかについては, まだ可能性があります. この問題や潜在的な改良点は, GitHubで記録されます.

Parts of MathML3 that do not fit well in this framework or are less fundamental have been omitted. Instead, they are described in a separate and larger [MATHML4] specification. The details of which math feature will be included in future versions of MathML Core or implemented as polyfills is still open. This question and other potential improvements are tracked on GitHub.

細部の実装の水準を増やしたり, 動く部分に焦点を当てたり, ブラウザで動く設計に従ったり, ウェブプラットフォームの自動テストに頼ったりすることで, この仕様書は, MathMLの相互運用性を大いに改良することが期待されています. さらに, MathMLの層での努力は, shadow trees, カスタム要素, [HOUDINI]のAPIといった最新のウェブ技術を利用することで, 利用者に対し, MathML4の残りの部分を実装すること, または, より一般にMathMLコアを拡張することを可能にします.

By increasing the level of implementation details, focusing on a workable subset, following a browser-driven design and relying on automated web platform tests, this specification is expected to greatly improve MathML interoperability. Moreover, effort on MathML layering will enable users to implement the rest of the MathML 4 specification, or more generally to extend MathML Core, using modern web technologies such as shadow trees, custom elements or APIs from [HOUDINI].

2. MathMLの基礎
MathML Fundamentals

2.1 要素と属性
Elements and attributes

MathML要素という用語は, MathML名前空間にある何らかの要素を指しています. この仕様書で定義されているMathML要素は, MathMLコア要素と呼ばれ, 下記の一覧のとおりです. 下記の一覧に無い何らかのMathML要素は, MathML未知要素と呼ばれます.

The term MathML element refers to any element in the MathML namespace. The MathML elements defined in this specification are called the MathML Core elements and are listed below. Any MathML element that is not listed below is called an Unknown MathML element.

  1. annotation
  2. annotation-xml
  3. maction
  4. math
  5. merror
  6. mfrac
  7. mi
  8. mmultiscripts
  9. mn
  10. mo
  11. mover
  12. mpadded
  13. mphantom
  14. mprescripts
  15. mroot
  16. mrow
  17. ms
  18. mspace
  19. msqrt
  20. mstyle
  21. msub
  22. msubsup
  23. msup
  24. mtable
  25. mtd
  26. mtext
  27. mtr
  28. munder
  29. munderover
  30. semantics

グループ要素は, maction, math, merror, mphantom, mprescripts, mrow, mstyle, semantics, MathML未知要素です.

The grouping elements are maction, math, merror, mphantom, mprescripts, mrow, mstyle, semantics and unknown MathML elements.

添え字要素は, mmultiscripts, mover, msub, msubsup, msup, munder, munderoverです.

The scripted elements are mmultiscripts, mover, msub, msubsup, msup, munder and munderover.

根号要素は, mrootmsqrtです.

The radical elements are mroot and msqrt.

この仕様書で定義された属性は, 何も名前空間を持たず, MathML属性と呼ばれます.

The attributes defined in this specification have no namespace and are called MathML attributes:

2.1.1 一番上の<math>要素
The Top-Level <math> Element

MathMLは, 唯一の一番上のルート要素であるmath要素を指定しています. math要素は, 文書の中のMathMLマークアップの各要素を包み込みます. 全ての他のMathMLの内容は, <math>要素の中に含まれなければなりません.

MathML specifies a single top-level or root math element, which encapsulates each instance of MathML markup within a document. All other MathML content must be contained in a <math> element.

<math>要素は, 2.1.3 共通の属性で説明する属性と, 次の属性を持ちます.

The <math> element accepts the attributes described in 2.1.3 Global Attributes as well as the following attributes:

display属性が, もし存在するなら, blockまたはinline大文字・小文字を区別せずに一致しなければなりません. A. ユーザーエージェントのスタイルシートで述べられているユーザーエージェント(訳注:利用者のOSやブラウザ)のスタイルシートは, displayプロパティ(block mathまたはinline math)やmath-styleプロパティ(normalまたはcompact)の既定値に影響する, この属性に対する決まりを含みます. display属性が無かったり, 無効な値を持っていたりする場合, ユーザーエージェントのスタイルシートは, その属性値をinlineと同じとして扱います.

The display attribute, if present, must be an ASCII case-insensitive match to block or inline. The user agent stylesheet described in A. User Agent Stylesheet contains rules for this attribute that affect the default values for the display (block math or inline math) and math-style (normal or compact) properties. If the display attribute is absent or has an invalid value, the User Agent stylesheet treats it the same as inline.

この仕様書は, alttext属性に指定する何ら注目すべき挙動を定義していません.

This specification does not define any observable behavior that is specific to the alttext attribute.

注意
Note
alttext属性は, 数式表示を実装していない古いソフトウェアで, 代替の文章として使用されてもよいです.
The alttext attribute may be used as alternative text by some legacy systems that do not implement math layout.

要素が, block mathまたはinline mathと等しいdisplayプロパティの算出値を持たない場合, その要素は, 指定されたプロパティに対応する値について述べているCSS仕様書によって配置されます. もしくは, mrow要素の配置アルゴリズムが, 数学コンテンツボックスを生み出すのに利用されます. 数学コンテンツボックスは, CSSで, display: block(算出値がblock mathの場合)またはdisplay: inline (算出値がinline mathの場合)に対して述べられているように, 要素の配置のための内容ボックスとして利用されます. 加えて, displayプロパティの算出値がblock mathに等しいなら, 数学コンテンツボックスは, 全体のボックス領域の水平方向の中心に描画されます.

If the <math> element does not have its computed display property equal to block math or inline math then it is laid out according to the CSS specification where the corresponding value is described. Otherwise the layout algorithm of the mrow element is used to produce a math content box. That math content box is used as the content for the layout of the element, as described by CSS for display: block (if the computed value is block math) or display: inline (if the computed value is inline math). Additionally, if the computed display property is equal to block math then that math content box is rendered horizontally centered within the content box.

注意
Note
TEXのディスプレイモード$$...$$とインラインモード$...$は, それぞれdisplay="block"display="inline"に相当します.
TEX's display mode $$...$$ and inline mode $...$ correspond to display="block" and display="inline" respectively.

次の例において, 数式mathは, 改行され, 全体の幅を使って, 数式の内容をその領域の中心に寄せるディスプレイモードで描画されます.

In the following example, a math formula is rendered in display mode on a new line and taking full width, with the math content centered within the container:

<div style="width: 15em;">
  This mathematical formula with a big summation and the number pi
  (訳注:"大きな総和記号と数字パイを用いたこの数式"の意味)
  <math display="block" style="border: 1px dotted black;">
    <mrow>
      <munderover>
        <mo></mo>
        <mrow><mi>n</mi><mo>=</mo><mn>1</mn></mrow>
        <mrow><mo>+</mo><mn></mn></mrow>
      </munderover>
      <mfrac>
        <mn>1</mn>
        <msup><mi>n</mi><mn>2</mn></msup>
      </mfrac>
    </mrow>
    <mo>=</mo>
    <mfrac>
      <msup><mi>π</mi><mn>2</mn></msup>
      <mn>6</mn>
    </mfrac>
  </math>
  is easy to prove.
  (訳注:"証明するのが容易です."の意味)
</div>
math example (display)

これと比較して, 同じ式がインラインモードでは次のように見えるでしょう. その式は, 強制的な改行無しに, 文章の段落の中に埋め込まれます. mrowの配置アルゴリズムによって指定される基準線は, 鉛直方向の位置揃えに利用されます. 総和と等号記号の中心, また分数は, 全て揃えられますが, 周りを囲っている文章の欧文ベースラインとは揃わないことに注意して下さい.

As a comparison, the same formula would look as follows in inline mode. The formula is embedded in the paragraph of text without forced line breaking. The baselines specified by the layout algorithm of the mrow are used for vertical alignment. Note that the middle of sum and equal symbols or fractions are all aligned, but not with the alphabetical baseline of the surrounding text.

math example (inline)

良質な数学の描画には数学用フォントの利用が必要なことから, ユーザーエージェントのスタイルシートは,font-familyを継承するのではなく, <math>要素でfont-familymathの値に設定すべきです. 加えて, font-style, font-weight, direction, text-indentなどといった親要素で設定できる様々なCSSプロパティは, 数式に適用されないことが期待され, そのため, ユーザーエージェントのスタイルシートは, 通常, それらの値を再設定する決まりを持ちます.

Because good mathematical rendering requires use of mathematical fonts, the user agent stylesheet should set the font-family to the math value on the <math> element instead of inheriting it. Additionally, several CSS properties that can be set on a parent container such as font-style, font-weight, direction or text-indent etc are not expected to apply to the math formula and so the user agent stylesheet has rules to reset them by default.

math {
  direction: ltr;
  text-indent: 0;
  letter-spacing: normal;
  line-height: normal;
  word-spacing: normal;
  font-family: math;
  font-size: inherit;
  font-style: normal;
  font-weight: normal;
  display: inline math;
  math-shift: normal;
  math-style: compact;
  math-depth: 0;
}
math[display="block" i] {
  display: block math;
  math-style: normal;
}
math[display="inline" i] {
  display: inline math;
  math-style: compact;
}

2.1.2 MathML属性の値に対する型
Types for MathML Attribute Values

CSSデータ型に加えて, MathML属性の中には, 次に示すMathML特有の型を持つものもあります.

In addition to CSS data types, some MathML attributes rely on the following MathML-specific types:

符号無し整数
unsigned-integer
[CSS-VALUES-4]で定義された<integer>の値, その最初の文字は, U+002Dハイフンマイナス文字(-)またはU+002Bプラス記号(+)のどちらでもありません.
An <integer> value as defined in [CSS-VALUES-4], whose first character is neither U+002D HYPHEN-MINUS character (-) nor U+002B PLUS SIGN (+).
ブール値
boolean
trueまたはfalse大文字・小文字を区別せずに一致する文字列.
A string that is an ASCII case-insensitive match to true or false.

2.1.3 共通の属性
Global Attributes

次の属性は, 全てのMathML要素に共通で, 全ての要素において指定されてもよいです.

The following attributes are common to and may be specified on all MathML elements:

2.1.4 HTML要素とMathML要素に共通する属性
Attributes common to HTML and MathML elements

id属性, class属性, style属性, data-*属性, nonce属性, tabindex属性は, HTML要素の id属性, class属性, style属性, data-*属性, nonce属性, tabindex属性で定義されたものと同じ構文や意味を持ちます.

The id, class, style, data-*, nonce and tabindex attributes have the same syntax and semantics as defined for id, class, style, data-*, nonce and tabindex attributes on HTML elements.

dir属性が, もし存在するなら, ltrまたはrtl大文字・小文字を区別せずに一致しなければなりません. その場合, ユーザーエージェントは, その属性値に対応する値に要素のdirectionプロパティを設定する表現の助言として, その属性を取り扱うことが期待されます. より正確には, 大文字・小文字を区別せずにrtlに一致するものはrtlに変換され, 一方, 大文字・小文字を区別せずにltrに一致するものはltrに変換されます.

The dir attribute, if present, must be an ASCII case-insensitive match to ltr or rtl. In that case, the user agent is expected to treat the attribute as a presentational hint setting the element's direction property to the corresponding value. More precisely, an ASCII case-insensitive match to rtl is mapped to rtl while an ASCII case-insensitive match to ltr is mapped to ltr.

注意
Note
dir属性は, アラビア語圏でよくrtlとされる数式の方向を設定するのに利用されます. しかしながら, 右から左へ書かれる言語は, 左から右へ書かれる数学をよく埋め込むことから, ユーザーエージェントのスタイルシートは, math要素のdirectionプロパティを状況に応じて再設定します.
The dir attribute is used to set the directionality of math formulas, which is often rtl in Arabic speaking world. However, languages written from right to left often embed math written from left to right and so the user agent stylesheet resets the direction property accordingly on the math elements.

次の例において, dir属性は, "𞸎足す𞸑の(𞸟足す١分の٢)乗"を右から左へ描画するのに利用されています.

In the following example, the dir attribute is used to render "𞸎 plus 𞸑 raised to the power of (٢ over, 𞸟 plus ١)" from right-to-left.

<math dir="rtl">
  <mrow>
    <mi>𞸎</mi>
    <mo>+</mo>
    <msup>
      <mi>𞸑</mi>
      <mfrac>
        <mn>٢</mn>
        <mrow>
          <mi>𞸟</mi>
          <mo>+</mo>
          <mn>١</mn>
        </mrow>
      </mfrac>
    </msup>
  </mrow>
</math>
dir example

全てのMathML要素は, HTMLにおいてイベントハンドラーコンテンツ属性で述べられているように, イベントハンドラーコンテンツ属性に対応しています.

All MathML elements support event handler content attributes, as described in event handler content attributes in HTML.

全てのHTML要素によって対応されているものとしてHTMLによって示されている全てのイベントハンドラーコンテンツ属性は, MathML要素IDLで定義されているように, 全てのMathML要素によっても対応されています.

All event handler content attributes noted by HTML as being supported by all HTMLElements are supported by all MathML elements as well, as defined in the MathMLElement IDL.

2.1.5 従来のMathML書式属性
Legacy MathML Style Attributes

mathcolor属性とmathbackground属性は, もし存在するなら, <color>である値を持たねければなりません. その場合, ユーザーエージェントは, それらの属性値に対応する値に要素のcolorプロパティやbackground-colorプロパティを設定する表現の助言として, それらの属性を取り扱うことが期待されます. mathcolor属性は, MathMLの文字列, 線などの前景の塗り潰しの色について述べ, 一方, mathbackground属性は, 要素の背景の色について述べます.

The mathcolor and mathbackground attributes, if present, must have a value that is a <color>. In that case, the user agent is expected to treat these attributes as a presentational hint setting the element's color and background-color properties to the corresponding values. The mathcolor attribute describes the foreground fill color of MathML text, bars etc while the mathbackground attribute describes the background color of an element.

mathsize属性は, もし存在するなら, 有効な<length-percentage>(訳注:長さや百分率)である値を持たねければなりません. その場合, ユーザーエージェントは, その属性値に対応する値に要素のfont-sizeプロパティを設定する表現の助言として, その属性を取り扱うことが期待されます. mathsizeプロパティは, 数式における字形の要求された高さを意図しますが, それに応じて他の部分(空白, 字下げ, 線の太さなど)の寸法も変更します.

The mathsize attribute, if present, must have a value that is a valid <length-percentage>. In that case, the user agent is expected to treat the attribute as a presentational hint setting the element's font-size property to the corresponding value. The mathsize property indicates the desired height of glyphs in math formulas but also scales other parts (spacing, shifts, line thickness of bars etc) accordingly.

注意
Note
上記の属性は, 完全なMathMLとの互換性のための実装です. MathMLコアのみを対象とする著者は, 書式にCSSを利用することが推奨されます.
The above attributes are implemented for compatibility with full MathML. Authors whose only target is MathML Core are encouraged to use CSS for styling.

2.1.6 displaystyle属性とscriptlevel属性
The displaystyle and scriptlevel attributes

displaystyle属性は, もし存在するなら, ブール値である値を持たなければなりません. その場合, ユーザーエージェントは, その属性値に対応する値に要素のmath-styleプロパティを設定する表現の助言として, その属性を取り扱うことが期待されます. より正確には, 大文字・小文字を区別せずにtrueに一致するものはnormalに変換され, 一方, 大文字・小文字を区別せずにfalseに一致するものはcompactに変換されます. この属性は, 例えば, 式の数学コンテンツの大きさや添え字の配置を変更することで, 式が論理的な高さを最小化するように試みるべきか(値がfalse), そうでないか(値がtrue)を示します.

The displaystyle attribute, if present, must have a value that is a boolean. In that case, the user agent is expected to treat the attribute as a presentational hint setting the element's math-style property to the corresponding value. More precisely, an ASCII case-insensitive match to true is mapped to normal while an ASCII case-insensitive match to false is mapped to compact. This attribute indicates whether formulas should try to minimize the logical height (value is false) or not (value is true) e.g. by changing the size of content or the layout of scripts.

scriptlevel属性は, もし存在するなら, <U>符号無し整数だとして, 値+<U>, -<U>, <U>を持たなければなりません. その場合, ユーザーエージェントは, その属性値に対応する値に要素のmath-depthプロパティを設定する表現の助言として, scriptlevelを取り扱うことが期待されます. より正確には, +<U>, -<U>, <U>は, それぞれadd(<U>), add(<-U>), <U>に変換されます.

The scriptlevel attribute, if present, must have value +<U>, -<U> or <U> where <U> is an unsigned-integer. In that case the user agent is expected to treat the scriptlevel attribute as a presentational hint setting the element's math-depth property to the corresponding value. More precisely, +<U>, -<U> and <U> are respectively mapped to add(<U>) add(<-U>) and <U>.

displaystylescriptlevelの値は, MathML要素の中で自動的に調整されます. これらの属性を完全に実装するには, 追加のCSSプロパティが, A. ユーザーエージェントのスタイルシートで述べられているように, ユーザーエージェントのスタイルシートで指定されなければなりません. 特に, 全てのMathML要素に対して, 既定値font-size: mathは, scriptlevelの変更が計算の中で行われることを確実にするために指定されます.

displaystyle and scriptlevel values are automatically adjusted within MathML elements. To fully implement these attributes, additional CSS properties must be specified in the user agent stylesheet as described in A. User Agent Stylesheet. In particular, for all MathML elements a default font-size: math is specified to ensure that scriptlevel changes are taken into account.

この例において, munder要素は, 添え字"A"を基となる部分"∑"にくっつけるのに利用されています. 通常, 総和記号は, 親要素から継承されたフォントサイズで, 下付き添え字に縮められたAと一緒に描画されます. displaystyleがtrueの場合, 総和記号はより大きく描かれ, "A" は下側の添え字になります. "A"のscriptlevelを0に再設定した場合, "A"は, 1番上のmathルート要素と同じフォントサイズを利用するでしょう.

In this example, an munder element is used to attach a script "A" to a base "∑". By default, the summation symbol is rendered with the font-size inherited from its parent and the A as a scaled down subscript. If displaystyle is true, the summation symbol is drawn bigger and the "A" becomes an underscript. If scriptlevel is reset to 0 on the "A", then it will use the same font-size as the top-level math root.

<math>
  <munder>
    <mo></mo>
    <mi>A</mi>
  </munder>
  <munder displaystyle="true">
    <mo></mo>
    <mi>A</mi>
  </munder>
  <munder>
    <mo></mo>
    <mi scriptlevel="0">A</mi>
  </munder>
</math>
displaystyle-scriptlevel example
注意
Note
TEXの\displaystyle, \textstyle, \scriptstyle, \scriptscriptstyleは, それぞれdisplaystylescriptlevelの組合せtrue0, false0, false1, falseと2に相当します.
TEX's \displaystyle, \textstyle, \scriptstyle, and \scriptscriptstyle correspond to displaystyle and scriptlevel as true and 0, false and 0, false and 1, and false and 2, respectively.

2.1.7 有効性のために予約された属性
Attributes Reserved as Valid

属性intentと属性argは, 有効性のために予約されています.

The attributes intent and arg are reserved as valid attributes.

この仕様書は, intent属性とarg属性に指定する何ら注目すべき挙動を定義していません.

This specification does not define any observable behavior that is specific to the intent and arg attributes.

注意
Note
これらの属性は[MATHML4]で説明されており, この仕様書の将来版で定義されても, 定義されなくてもよいです. 著者は, これらが現在開発中で変更を前提としていることを知っているべきです.
These attributes are described in [MATHML4] and future versions of this specification may or may not define them. Authors should be aware that they are currently in development and subject to change.

2.2 ウェブプラットフォームにおける統合
Integration in the Web Platform

2.2.1 HTMLとSVG
HTML and SVG

MathMLを, 関連する仕様書[HTML] [SVG]で述べられているように, HTMLやSVGと混在することができます.

MathML can be mixed with HTML and SVG as described in the relevant specifications [HTML] [SVG].

SVGのrequiredExtensions属性の値を求めるとき, ユーザーエージェントは, MathML名前空間によって特定された言語拡張に対する対応を要求しなければなりません.

When evaluating the SVG requiredExtensions attribute, user agents must claim support for the language extension identified by the MathML namespace.

この例において, 行の中のMathMLとSVGが, HTML文書の中で利用されています. SVG要素<switch>と(適切な<requiredExtensions>と一緒の)SVG要素<foreignObject>は, 予備の文字列と一緒に, MathMLの式を図の中に埋め込むために利用されます. HTMLのinputは, 数式の中に相互作用する入力部分を含むためにmtextの中で利用されます. annotation-xml要素の中でのSVGやHTMLの例については, 3.7 意味と表現も参照して下さい.

In this example, inline MathML and SVG elements are used inside an HTML document. SVG elements <switch> and <foreignObject> (with proper <requiredExtensions>) are used to embed a MathML formula with a text fallback, inside a diagram. HTML input element is used within the mtext to include an interactive input field inside a mathematical formula. See also 3.7 Semantics and Presentation for an example of SVG and HTML inside an annotation-xml element.

<svg style="font-size: 20px" width="400px" height="220px" viewBox="0 0 200 110">
  <g transform="translate(10,80)">
    <path d="M 0 0 L 150 0 A 75 75 0 0 0 0 0
             M 30 0 L 30 -60 M 30 -10 L 40 -10 L 40 0"
          fill="none" stroke="black"></path>
    <text transform="translate(10,20)">1</text>
    <switch transform="translate(35,-40)">
      <foreignObject width="200" height="50"
                     requiredExtensions="http://www.w3.org/1998/Math/MathML">
        <math>
          <msqrt>
            <mn>2</mn>
            <mi>r</mi>
            <mo></mo>
            <mn>1</mn>
          </msqrt>
        </math>
      </foreignObject>
      <text>\sqrt{2r - 1}</text>
    </switch>
  </g>
</svg>

<p>
  Fill the blank:
  (訳注:"空欄を埋めて下さい."の意味)
  <math>
    <msqrt>
      <mn>2</mn>
      <mtext><input onchange="..." size="2" type="text"></mtext>
      <mo></mo>
      <mn>1</mn>
    </msqrt>
    <mo>=</mo>
    <mn>3</mn>
  </math>
</p>
html-svg example

2.2.2 CSS書式
CSS styling

ユーザーエージェントは, 4. 数学配置のためのCSS拡張で述べられている新しい機能を含め, この仕様書で述べられている様々なCSS機能に対応しなければなりません. それらの機能は, display: contentsに対する計算の決まりに従わなければなりません.

User agents must support various CSS features mentioned in this specification, including new ones described in 4. CSS Extensions for Math Layout. They must follow the computation rule for display: contents.

この例において, MathMLの式は, 親要素のCSSの色を継承し, style属性を通じて指定されたfont-familyを利用します.

In this example, the MathML formula inherits the CSS color of its parent and uses the font-family specified via the style attribute.

<div style="width: 15em; color: blue">
  This mathematical formula with a big summation and the number pi
  (訳注:"大きな総和記号と数字パイを用いたこの数式"の意味)
  <math display="block" style="font-family: STIX Two Math">
    <mrow>
      <munderover>
        <mo></mo>
        <mrow><mi>n</mi><mo>=</mo><mn>1</mn></mrow>
        <mrow><mo>+</mo><mn></mn></mrow>
      </munderover>
      <mfrac>
        <mn>1</mn>
        <msup><mi>n</mi><mn>2</mn></msup>
      </mfrac>
    </mrow>
    <mo>=</mo>
    <mfrac>
      <msup><mi>π</mi><mn>2</mn></msup>
      <mn>6</mn>
    </mfrac>
  </math>
  is easy to prove.
  (訳注:"証明するのが容易です."の意味)
</div>
style example

MathMLコア要素を含む全ての文書は, ユーザーエージェントの水準でのスタイルシートの既定値として, A. ユーザーエージェントのスタイルシートで述べられているCSSの決まりを含まなければなりません. 特に, これらの文書は, 全てのMatHML要素において書字モードhorizontal-lrに強制するために!important規則を加えます.

All documents containing MathML Core elements must include CSS rules described in A. User Agent Stylesheet as part of user-agent level style sheet defaults. In particular, this adds !important rules to force writing mode to horizontal-lr on all MathML elements.

floatプロパティは, 親要素のdisplayの算出値がblock mathまたはinline mathの要素を回り込ませんし, それらの要素をフロー外にしません.

The float property does not create floating of elements whose parent's computed display value is block math or inline math, and does not take them out-of-flow.

::first-line疑似要素や::first-letter疑似要素は, displayの算出値がblock mathまたはinline mathの要素に適用されず, それらの要素は祖先要素の最初の行や最初の文字に影響を与えません.

The ::first-line and ::first-letter pseudo-elements do not apply to elements whose computed display value is block math or inline math, and such elements do not contribute a first formatted line or first letter to their ancestors.

次のCSSの機能は, 対応されておらず, 無視されなければなりません.

The following CSS features are not supported and must be ignored:

  • 数式の中での改行:全てのMathML要素において, white-spacenowrapとして取り扱われます.
    Line breaking inside math formulas: white-space is treated as nowrap on all MathML elements.
  • 位置揃え:全てのMathML要素において, align-content, justify-content, align-self, justify-selfは何ら効果を持ちません.
    Alignment properties: align-content, justify-content, align-self, justify-self have no effects on MathML elements.
注意
Note
これらの機能は, この仕様書の将来のヴァージョンで処理されるかもしれません. 今のところは, 著者は, 下位互換性の課題を引き起こすかもしれないことから, これらのプロパティを異なった値に設定することを避けるべきです.
These features might be handled in future versions of this document. For now, authors are discouraged from setting a different value for these properties as that might lead to backward incompatibility issues.

2.2.3 DOMとJavaScript
DOM and JavaScript

ウェブアプリケーションAPIに対応したユーザーエージェントは, [DOM]木構造と同期したMathMLの視覚的描画を維持することを確実にしなければなりません. 特にMathML属性を動的に修正する際に, 必要な更新を行わなければなりません.

User agents supporting Web application APIs must ensure that they keep the visual rendering of MathML synchronized with the [DOM] tree, in particular perform necessary updates when MathML attributes are modified dynamically.

DOMでMathML要素を表現する全てのノードは, 次に示すMathMLElementインターフェイスを実装し, スクリプトに触れさせなければなりません.

All the nodes representing MathML elements in the DOM must implement, and expose to scripts, the following MathMLElement interface.

WebIDL[Exposed=Window]
interface MathMLElement : Element { };
MathMLElement includes GlobalEventHandlers;
MathMLElement includes HTMLOrForeignElement;

GlobalEventHandlersインターフェイス, HTMLOrForeignElementインターフェイスは, [HTML]で定義されています.

The GlobalEventHandlers and HTMLOrForeignElement interfaces are defined in [HTML].

次の例において, MathMLの式は, 分数"2分のα"を描画するのに使われています. 赤いαをクリックすると, 青いβに変わります.

In the following example, a MathML formula is used to render the fraction "α over 2". When clicking the red α, it is changed into a blue β.

<script>
  function ModifyMath(mi) {
      mi.style.color = 'blue';
      mi.textContent = 'β';
  }
</script>
<math>
  <mrow>
    <mfrac>
      <mi style="color: red" onclick="ModifyMath(this)">α</mi>
      <mn>2</mn>
    </mfrac>
  </mrow>
</math>
dom-idl example
課題
Issue
HTMLOrSVGElementの名前を変更し, [HTML]でのMathMLElementを定義する必要があります.
Rename HTMLOrSVGElement and define MathMLElement in [HTML].

2.2.4 文字配置
Text layout

数学用フォントは一般に大きな積分記号といったとても高さのある字形を含むことから, 植字の尺度を用いることは, 文章の過度の行間を避けるために重要です. 結果として, ユーザーエージェントは, 文字配置を成し遂げる際に, OS/2テーブル[OPEN-FONT-FORMAT] のUSE_TYPO_METRICSフラグに注意しなければなりません.

Because math fonts generally contain very tall glyphs such as big integrals, using typographic metrics is important to avoid excessive line spacing of text. As a consequence, user agents must take into account the USE_TYPO_METRICS flag from the OS/2 table [OPEN-FONT-FORMAT] when performing text layout.

2.2.5 フォーカス
Focus

MathMLでは, HTMLで述べれているFocus(訳注:"フォーカス"の意味)と同じ概念, 接続要求, 案内を用いて, この節で述べられているMathMLへの適用に関する変更または明確化によって, 相互作用するユーザーエージェントに対応することで, 著者に相互作用を認める機能を提供します.

MathML provides the ability for authors to allow for interactivity in supporting interactive user agents using the same concepts, approach and guidance to Focus as described in HTML, with modifications or clarifications regarding application for MathML as described in this section.

要素がフォーカスされたとき, セレクタ Level 3で述べられている全ての適用可能なCSSのフォーカスに関係ある擬似クラスが, この仕様書で定義されたように適用されます.

When an element is focused, all applicable CSS focus-related pseudo-classes as defined in Selectors Level 3 apply, as defined in that specification.

(素子要素の中のHTML要素を含め)埋め込まれたmath要素の中身は, それらを含む親となるHTML文書の(逐次的なフォーカスの順番を組合せた)逐次的なフォーカスの順番の一因となります.

The contents of embedded math elements (including HTML elements inside token elements) contribute to the sequential focus order of the containing owner HTML document (combined sequential focus order).

3. プレゼンテーションマークアップ
Presentation Markup

3.1 視覚的書式モデル
Visual formatting model

3.1.1 ボックスモデル
Box Model

displayプロパティの既定値は, A. ユーザーエージェントのスタイルシートで述べられています.

The default display property is described in A. User Agent Stylesheet:

  • <math>ルート要素に対して, 既定値は, display属性の値に応じて, inline mathまたはblock mathに等しくなります.
    For the <math> root, it is equal to inline math or block math according to the value of the display attribute.
  • 表のMathML要素 mtable, mtr, mtdに対して, 既定値は, それぞれinline-table, table-row, table-cellに等しくなります.
    For Tabular MathML elements mtable, mtr, mtd it is respectively equal to inline-table, table-row and table-cell.
  • 最初の子要素を除く全てのmaction要素とsemantics要素に対して, 既定値は, noneに等しくなります.
    For all but the first children of the maction and semantics elements, it is equal to none.
  • その他の全てのMathML要素に対して, 既定値は, block mathに等しくなります.
    For all the other MathML elements it is equal to block math.

異なる書字モードにおける数学配置を指定するために, この仕様書は, [CSS-WRITING-MODES-4]による概念を利用します.

In order to specify math layout in different writing modes, this specification uses concepts from [CSS-WRITING-MODES-4]:

注意
Note
他に指定がない限り, この仕様書の図は, horizontal-lrltr書字モードを利用します. 数学配置でときどき利用される他の書字モードの例については, 4, 5, 6を参照して下さい.
Unless specified otherwise, the figures in this specification use a writing mode of horizontal-lr and ltr. See Figure 4, Figure 5 and Figure 6 for examples of other writing modes that are sometimes used for math layout.

MathML要素で使われるボックスは, CSSと互換性のある方法で配置を成し遂げるための, ただし, 数式の中でのとても精密な位置や間隔も考慮に入れた様々なパラメータを当てにしています. 数学の各ボックスは, 次のパラメータを持ちます.

Boxes used for MathML elements rely on several parameters in order to perform layout in a way that is compatible with CSS but also to take into account very accurate positions and spacing within math formulas:

  1. 行内の尺度. CSSに基づく最小内容行内サイズ, 最大内容行内サイズ, 行内サイズ. 1を参照して下さい.
    1 MathML要素に対する一般的なボックスモデル
    Figure 1 Generic Box Model for MathML elements
  2. ブロックの尺度. ブロックサイズ, 最初の基準線集合, 最後の基準線集合. 次の基準線がMathMLのボックスのために定義されています.

    Block metrics. The block size, first baseline set and last baseline set. The following baselines are defined for MathML boxes:

    1. 典型的に大文字のラテン文字の字形の下端を揃える欧文ベースライン. ボックスの欧文ベースラインから行上面の境界までの代数的な距離は, 行アセントと呼ばれます. ボックスの行下面の境界から欧文ベースラインまでの代数的な距離は, 行ディセントと呼ばれます(訳注:日本語では"ディセンダ"と呼ばれることもありますが, 原文の表現に合わせて欧文ベースラインから下の部分を"ディセンダ", その距離を"ディセント"と呼んでいます).
      The alphabetic baseline which typically aligns with the bottom of uppercase Latin glyphs. The algebraic distance from the alphabetic baseline to the line-over edge of the box is called the line-ascent. The algebraic distance from the line-under edge to the alphabetic baseline of the box is called the line-descent.
    2. 典型的に分数の線, かっこの真ん中, 二項演算子を揃える数学軸とも呼ばれる数学基準線. この基準線は, いつでも欧文ベースラインから行上面軸高さだけずれています.
      The mathematical baseline, also called math axis, which typically aligns with the fraction bar, middle of fences and binary operators. It is shifted away from the alphabetic baseline by AxisHeight towards the line-over.
    3. 余計な空間を除外した, 描かれる数学コンテンツの理論上の行上面の限界を意図する字面上面基準線(訳注:"字面"は本来和文フォントに対する概念ですが, 他に適当なものがないので"ink"の日本語訳に"字面"を当てました). 指定されていなければ, 行上面の境界に揃えられます. 欧文ベースラインから字面上面基準線までの代数的な距離は, 字面行アセントと呼ばれます.
      The ink-over baseline, indicating the line-over theorical limit of the math content drawn, excluding any extra space. If not specified, it is aligned with the line-over edge. The algebraic distance from the alphabetic baseline to the ink-over baseline is called the ink line-ascent.
    4. 余計な空間を除外した, 描かれる数学コンテンツの理論上の行下面の限界を意図する字面下面基準線. 指定されていなければ, 行下面の境界に揃えられます. 字面下面基準線から欧文ベースラインまでの代数的な距離は, 字面行ディセントと呼ばれます.
      The ink-under baseline, indicating the line-under theorical limit of the math content drawn, excluding any extra space. If not specified, it is aligned with the line-under edge. The algebraic distance from the ink-under baseline to the alphabetic baseline is called the ink line-descent.
    注意
    Note
    数学配置において, 文字列の位置を決める際に, 字面の範囲を当てにすることはとても重要です。このことは, より複雑な表記(例えば, 平方根)には該当しません. 字面アセントと字面ディセントは全てのMathML要素に対して定義されているにも関わらず, それらは, 実際のところ素子要素に対してのみ使用されます. それ以外の場合, それらは通常のアセントとディセントに単に一致します.
    For math layout, it is very important to rely on the ink extent when positioning text. This is not the case for more complex notations (e.g. square root). Although ink-ascent and ink-descent are defined for all MathML elements they are really only used for the token elements. In other cases, they just match normal ascent and descent.
    他で指定されていない限り, 最後の基準線集合は, MathMLボックスに対する最初の基準線集合に等しいです.
    Unless specified otherwise, the last baseline set is equal to the first baseline set for MathML boxes.
  3. ボックスの文字列が行内軸に対してどのくらい傾いているかを測る尺度を提供する, 任意のイタリック補正. 2を参照して下さい.
    An optional italic correction which provides a measure of how much the text of a box is slanted along the inline axis. See Figure 2.
    2 イタリック体のfと大きな積分記号に対するイタリック補正の例
    Figure 2 Examples of italic correction for italic f and large integral
    最小内容行内サイズ最大内容行内サイズを計算する途中で, もしくは配置する途中でイタリック補正を要求された場合, 0が予備の値として使用されます.
    If it is requested during calculation of min-content inline size and max-content inline size or during layout then 0 is used as a fallback value.
  4. アクセントとして, ボックスの位置を決める際に利用されるべき, ボックスの行内軸からずらす基準を提供する任意の上側アクセント付随位置. 3を参照して下さい.
    An optional top accent attachment which provides a reference offset on the inline axis of a box that should be used when positioning that box as an accent. See Figure 3.
    3 サーカムフレックスアクセントに対する上側アクセント付随位置の例
    Figure 3 Example of top accent attachment for a circumflex accent
    最小内容行内サイズ(または最大内容行内サイズ)を計算する中で, 上側アクセント付随位置を要求された場合, 最小内容行内サイズ(または最大内容行内サイズ)の半分が予備の値として使用されます. 配置の途中で要求された場合, ボックスの行内サイズの半分の値が予備の値として使用されます.
    If it is requested during calculation of min-content inline size (respectively max-content inline size) then half the min-content inline size (respectively max-content inline size) is used as a fallback value. If it is requested during layout then half the inline size of the box is used as a fallback value.

MathMLボックスが与えられたとき, 次の移動距離が定義されます.

Given a MathML box, the following offsets are defined:

  • 子要素ボックスの行内移動距離は, 親要素ボックスの行内始端と子要素ボックスの行内始端の間の距離です.
    The inline offset of a child box is the offset between the inline-start edge of the parent box and the inline-start edge of the child box.
  • 子要素ボックスのブロック移動距離は, 親要素ボックスのブロック始端と子要素ボックスのブロック始端の間の距離です.
    The block offset of a child box is the offset between the block-start edge of the parent box and the block-start edge of the child box.
  • 子要素ボックスの行左端移動距離は, 親要素ボックスの行左端と子要素ボックスの行左端の間の距離です.
    The line-left offset of a child box is the offset between the line-left edge of the parent box and the line-left edge of the child box.
4 例えばアラビア語の数学で使われてもよい書字モードhorizontal-tbおよびrtlに対するボックスモデル.
Figure 4 Box model for writing mode horizontal-tb and rtl that may be used in e.g. Arabic math.
5 例えばモンゴル語の数学で使われてもよい書字モードvertical-lrおよびltrに対するボックスモデル.
Figure 5 Box model for writing mode vertical-lr and ltr that may be used in e.g. Mongolian math.
6 例えば日本語の数学で使われてもよい書字モードvertical-rlおよびltrに対するボックスモデル.
Figure 6 Box model for writing mode vertical-rl and ltr that may be used in e.g. Japanese math.
注意
Note
MathML要素の中の, 子要素ボックスや描画される部品の場所は, 行内移動距離ブロック移動距離を用いて表されます. 便利なように, 配置アルゴリズムは, フローに関係した方向, または行に関係した方向, もしくは欧文ベースラインを用いて, 移動距離を説明してもよいです. 子要素ボックスの位置は, いつでも親要素ボックスや子要素ボックスの尺度を計算した後に決められるので, ある1つのものから, 他のものの描画へ移り変わることが可能です.
The position of child boxes and graphical items inside a MathML box are expressed using the inline offset and block offset. For convenience, the layout algorithms may describe offsets using flow-relative directions, line-relative directions or the alphabetic baseline. It is always possible to pass from one description to the other because position of child boxes is always performed after the metrics of the box and of its child boxes are calculated.

行に関係する尺度から得られる移動距離の例を示します.

Here are examples of offsets obtained from line-relative metrics:

課題78: 字面アセント/ディセント opentype/texneeds-tests
Issue 78: Ink ascent/descent
字面アセント/ディセントの定義を改良しますか?
Improve definition of ink ascent/descent?

3.1.2 配置アルゴリズム
Layout Algorithms

各MathML要素は関連する数学コンテンツボックスを持ちます. そのボックスは, 次の情報を用いるこの章の配置アルゴリズムのとおりに計算されます.

Each MathML element has an associated math content box, which is calculated as described in this chapter's layout algorithms using the following structure:

  1. 数学コンテンツの最小内容行内サイズ最大内容行内サイズの計算.
    Calculation of min-content inline size and max-content inline size of the math content.
  2. ボックスの配置:
    Box layout:
    1. フロー内の子要素ボックスの配置.
      Layout of in-flow child boxes.
    2. 行内サイズ, 字面行アセント, 字面行ディセント, 行アセント, 数学コンテンツの行アセントの計算.
      Calculation of inline size, ink line-ascent, ink line-descent, line-ascent and line-ascent of the math content.
    3. 数学コンテンツボックスの中での子要素ボックスの移動距離, および追加の描画される部品(線, 根号など)の移動距離の計算.
      Calculation of offsets of child boxes within the math content box as well as sizes and offsets of extra graphical items (bars, radical symbol, etc).
    4. [CSS-POSITION-3]で述べられているように, 絶対配置固定配置のボックスの配置と位置指定.
      Layout and positioning of absolutely-positioned and fixed-positioned boxes, as described in [CSS-POSITION-3].

次の追加の工程が実施されなければなりません.

The following extra steps must be performed:

注意
Note
上で述べたことによって, マージンの相殺は, MathML要素に適用されません.
Per the description above, margin-collapsing does not apply to MathML elements.

ボックスの配置の間, 任意の行内伸長サイズ制限ブロック伸長サイズ制限のパラメータは, 装飾された演算子において使用されてもよいです. 前者は, 行内軸に沿って伸長された核となる演算子が覆うべき対象のサイズを意図します. 後者は, ブロック軸に沿って伸長された核となる演算子が覆うべき字面行アセント字面行ディセントを意図します. 他で何ら指定されない限り, これらのパラメータは, ボックスの配置の間, 無視され, 子要素ボックスは, 伸長サイズ制限無しに配置されます.

During box layout, optional inline stretch size constraint and block stretch size constraint parameters may be used on embellished operators. The former indicates a target size that a core operator stretched along the inline axis should cover. The latter indicates an ink line-ascent and ink line-descent that a core operator stretched along the block axis should cover. Unless specified otherwise, these parameters are ignored during box layout and child boxes are laid out without any stretch size constraint.

課題76: 何に対して行内の百分率を計算するかを明確化します. css/html5need specification updateneeds-tests
Issue 76: Define what inline percentages resolve against.
何に対して行内の百分率を計算するかを明確化します.
Define what inline percentages resolve against
課題77: 何に対してブロックの百分率を計算するかを明確化します. css/html5need specification updateneeds-tests
Issue 77: Define what block percentages resolve against.
何に対してブロックの百分率を計算するかを明確化します.
Define what block percentages resolve against

3.1.3 名前無し<mrow>ボックス
Anonymous <mrow> boxes

名前無しボックスは, DOM木構造の中に関連する要素を持たないボックスで, 配置の目的のみのために生成されます. 名前無しボックスのプロパティは, 囲っている名前無しでないボックスから継承され, 継承されないプロパティは, 初期値を持ちます. 名前無し<mrow>ボックスは, block mathに等しいdisplayを持つ名前無しボックスで, 3.3.1.2 <mrow>の配置の節で述べられているように配置されます.

An anonymous box is a box without any associated element in the DOM tree and which is generated for layout purpose only. The properties of anonymous boxes are inherited from the enclosing non-anonymous box while non-inherited properties have their initial value. An anonymous <mrow> box is an anonymous box with display equal to block math and which is laid out as described in section 3.3.1.2 Layout of <mrow>.

MathML要素が名前無し<mrow>ボックスを生成する場合, そのボックスは, 名前無し<mrow>ボックスの中に子要素を包みます。すなわち, 視覚的書式モデルの中の一部の木構造が, それ自身がMathML要素の子要素に関連するボックスを含む, 名前無し<mrow>ボックスで作られます.

If a MathML element generates an anonymous <mrow> box if it wraps in children in an anonymous <mrow> box i.e. its subtree in the visual formatting model is made of an anonymous <mrow> box which itself contains the boxes associated to the children of this MathML element.

次に示す例において, math要素とmrow要素は, 3.3.1.2 <mrow>の配置の節で述べられているように配置されます. 特に, <math>要素は, <mo>≠</mo>子要素の周りに適切な空白を加え, <mrow>要素は, <mo>|</mo>子要素を縦に伸長します.

In the following example, the math and mrow elements are laid out as described in section 3.3.1.2 Layout of <mrow>. In particular, the <math> element adds proper spacing around its <mo>≠</mo> child and the <mrow> element stretches its <mo>|</mo> children vertically.

mtd要素はdisplay: table-cellを持ち, msqrt要素は子要素の周りに根号を表示します. ただし, それらの要素は, 3.3.1.2 <mrow>の配置の節で述べられているものと同じような方法で子要素を配置します. <msqrt>要素は, <mo>+</mo>子要素の周りに適切な空白を加え, <mtd>要素は, <mo>子要素を縦に伸長します. このことを可能にするために, これら2つの要素は, それぞれ名前無し<mrow>ボックスを生成します.

The mtd element has display: table-cell and the msqrt element displays a radical symbol around its children. However, they also place their children in a way that is similar to what is described in section 3.3.1.2 Layout of <mrow>: the <msqrt> element adds proper spacing around its <mo>+</mo> child while the <mtd> element stretches its <mo> children vertically. In order to make this possible, each of these two elements generates an anonymous <mrow> box.

<math>
  <mrow>
    <mo>|</mo>
    <mtable>
      <mtr>
        <mtd>
          <mi>x</mi>
        </mtd>
        <mtd>
          <mo>(</mo>
          <mfrac linethickness="0">
            <mn>5</mn>
            <mn>3</mn>
          </mfrac>
          <mo>)</mo>
        </mtd>
      </mtr>
      <mtr>
        <mtd>
          <msqrt>
            <mn>7</mn>
            <mo>+</mo>
            <mn>2</mn>
          </msqrt>
        </mtd>
        <mtd>
          <mi>y</mi>
        </mtd>
      </mtr>
    </mtable>
    <mo>|</mo>
  </mrow>
  <mo></mo>
  <mn>0</mn>
</math>
math example (display)

3.1.4 スタックコンテキスト
Stacking contexts

MathML要素は, 様々な間隔を空ける決まりのために, 重ね合わせることができます. また, それらは, 追加の描画される部品(線, 根号など)を含むことができます. 書式の算出値としてdisplay: block mathまたはdisplay: inline mathを持つMathML要素は, 新しいスタックコンテキストを生み出します. そのようなMathML要素のフロー内子要素の描画順序は, 厳密にブロック要素と同じです. 追加の描画される部品は, 文字列と背景の後に描画されます(display: inline mathに対する7.2.4の工程の後に調整され, display: block mathに対する7.2の工程の後に調整されます).

MathML elements can overlap due to various spacing rules. They can as well contain extra graphical items (bars, radical symbol, etc). A MathML element with computed style display: block math or display: inline math generates a new stacking context. The painting order of in-flow children of such a MathML element is exactly the same as block elements. The extra graphical items are painted after text and background (right after step 7.2.4 for display: inline math and right after step 7.2 for display: block math).

3.2 素子要素
Token Elements

プレゼンテーションマークアップの素子要素は, ざっくり言うと, 意味を伝達する数学表記の最小の単位を表すよう意図されています. 素子は, おおまかに言って, 文章の中の言葉と似ています. ただし, 数学表記の精密で象徴的な特性から, 素子要素の様々な種類や性質がMathMLマークアップの中で重要な役割を果たします. 対照的に, 文章データの中では, 個々の言葉は, めったにマークアップされたり, 特別な書式にされたりする必要はありません.

Token elements in presentation markup are broadly intended to represent the smallest units of mathematical notation which carry meaning. Tokens are roughly analogous to words in text. However, because of the precise, symbolic nature of mathematical notation, the various categories and properties of token elements figure prominently in MathML markup. By contrast, in textual data, individual words rarely need to be marked up or styled specially.

注意
Note
実際のところ, ほとんどのMathML素子要素は, 変数, 数字, 演算子などに対する単純な文字列を含むのみで, 凝った配置は必要としません. ただし, 素子要素は, 改行を伴う文章や任意のHTML5フレージング要素を含むことができます.
In practice, most MathML token elements just contain simple text for variables, numbers, operators etc and don't need sophisticated layout. However, it can contain text with line breaks or arbitrary HTML5 phrasing elements.

3.2.1 文章<mtext>
Text <mtext>

mtext要素は, 文章自体として描画されるべき任意の文章を表すのに使われます. 一般に, mtext要素は, 注釈の文章を示すよう意図されています.

The mtext element is used to represent arbitrary text that should be rendered as itself. In general, the <mtext> element is intended to denote commentary text.

<mtext>要素は, 2.1.3 共通の属性で述べられている属性を持ちます.

The <mtext> element accepts the attributes described in 2.1.3 Global Attributes.

次の例において, mtextは, 定義における条件の言葉を記入するのに使用されています.

In the following example, mtext is used to put conditional words in a definition:

<math>
  <mi>y</mi>
  <mo>=</mo>
  <mrow>
    <msup>
      <mi>x</mi>
      <mn>2</mn>
    </msup>
    <mtext>&nbsp;if&nbsp;</mtext>
    <mrow>
      <mi>x</mi>
      <mo></mo>
      <mn>1</mn>
    </mrow>
    <mtext>&nbsp;and&nbsp;</mtext>
    <mn>2</mn>
    <mtext>&nbsp;otherwise.</mtext>
  </mrow>
</math>
(訳注:"x≥1ならばy=x2, そうでなければ2"の意味)
mtext example
3.2.1.1 <mtext>の配置
Layout of <mtext>

要素が, block mathまたはinline mathに等しいdisplayプロパティの算出値を持たないならば, その要素は, 指定されたプロパティに対応する値について述べているCSS仕様書によって配置されます. そうでなければ, 下記の配置が行われます.

If the element does not have its computed display property equal to block math or inline math then it is laid out according to the CSS specification where the corresponding value is described. Otherwise, the layout below is performed.

<mtext>要素が, 強制改行または自動折り返し機会の無い文章の中身のみを含むなら, 文章のために生成された名前無し子ノードは, 関係するCSS仕様書で定義されたように配置され, 次のとおりです.

If the <mtext> element contains only text content without forced line break or soft wrap opportunity then, the anonymous child node generated for that text is laid out as defined in the relevant CSS specification and:

そうでない場合, mtext要素はブロックボックスとして配置され, ブロックボックスのものに対応する最小内容行内サイズ, 最大内容行内サイズ, 行内サイズ, ブロックサイズ, 最初の基準線集合, 最後の基準線集合は, 数学コンテンツボックスに対して使われます.

Otherwise, the mtext element is laid out as a block box and corresponding min-content inline size, max-content inline size, inline size, block size, first baseline set and last baseline set are used for the math content box.

3.2.2 識別子<mi>
Identifier <mi>

mi要素は, 識別子として表示されるべき記号の名前や何らかの文字列を表します. 識別子には, 変数, 関数名, 定数の記号が含まれます.

The mi element represents a symbolic name or arbitrary text that should be rendered as an identifier. Identifiers can include variables, function names, and symbolic constants.

<mi>要素は, 2.1.3 共通の属性で述べられている属性と, 次の属性を持ちます.

The <mi> element accepts the attributes described in 2.1.3 Global Attributes as well as the following attribute:

配置アルゴリズムは, mtext要素と同じです. ユーザーエージェントのスタイルシートは, 4.2 新しいtext-transformの値で導入するtext-transformの値を通じて自動でのイタリック体を実装するために, 次のプロパティを含まなければなりません.

The layout algorithm is the same as the mtext element. The user agent stylesheet must contain the following property in order to implement automatic italic via the text-transform value introduced in 4.2 New text-transform value:

mi {
  text-transform: math-auto;
}

mathvariant属性は, もし存在するなら大文字・小文字は区別せずにnormalに一致しなければなりません. その場合, ユーザーエージェントは, この属性を要素のtext-transformプロパティをnoneに設定する表現の助言として, この属性を取り扱うことが期待されます. 他の場合, 何も効果を持ちません.

The mathvariant attribute, if present, must be an ASCII case-insensitive match of normal. In that case, the user agent is expected to treat the attribute as a presentational hint setting the element's text-transform property to none. Otherwise it has no effects.

注意
Note

[MathML3]では, mathvariant属性は, 素子要素の論理的な種類を定義するのに使われていました. それぞれの論理的な種類は, 与えられた数式の中で特定の意味を持つ, 植字に関連する記号素子の集合を提供していました.

In [MathML3], the mathvariant attribute was used to define logical classes of token elements, each class providing a collection of typographically-related symbolic tokens with specific meaning within a given mathematical expression.

MathMLコアでは, この属性は, mi要素を自動的にイタリック体にすることを取り消すためにのみ使用されます. 他の利用方法に対しては, より適切な数学用英数字記号[ユニコード]が代わりに用いられるべきです. C. 数学用英数字記号の節も参照して下さい.

In MathML Core, this attribute is only used to cancel automatic italic of the mi element. For other use cases, the proper Mathematical Alphanumeric Symbols [UNICODE] should be used instead. See also section C. Mathematical Alphanumeric Symbols.

次の例において, miは, 変数と関数名を描画するのに使用されています. 単独の文字を含む識別子は, 通常, イタリック体になることに注意して下さい.

In the following example, mi is used to render variables and function names. Note that identifiers containing a single letter are italic by default.

<math>
  <mi>cos</mi>
  <mo>,</mo>
  <mi>c</mi>
  <mo>,</mo>
  <mi mathvariant="normal">c</mi>
</math>
mi example

3.2.3 数字<mn>
Number <mn>

mn要素は, "数値の文字列"や数値の文字列として描画されるべき他のデータを表します. 一般に言って, 数値の文字列は数字の列で, 場合によっては小数点を含み, 符号の付かない整数または実数を表します.

The mn element represents a "numeric literal" or other data that should be rendered as a numeric literal. Generally speaking, a numeric literal is a sequence of digits, perhaps including a decimal point, representing an unsigned integer or real number.

<mn>要素は, § 2.1.3 共通の属性で述べられている属性を持ちます. その配置アルゴリズムは, mtext要素と同じです.

The <mn> element accepts the attributes described in 2.1.3 Global Attributes. Its layout algorithm is the same as the mtext element.

次の例において, mnは小数を書くのに使用されています.

In the following example, mn is used to write a decimal number.

<math>
  <mn>3.141592653589793</mn>
</math>
mn example

3.2.4 演算子, かっこ, 区切り, アクセント<mo>
Operator, Fence, Separator or Accent <mo>

mo要素は, 演算子や演算子として描画すべきものを表します. 一般に, 数学の演算子の表記の慣習は大変複雑です. MathMLは, <mo>要素の描画するときの挙動を特定する比較的洗練された仕組みを提供しています.

The mo element represents an operator or anything that should be rendered as an operator. In general, the notational conventions for mathematical operators are quite complicated, and therefore MathML provides a relatively sophisticated mechanism for specifying the rendering behavior of an <mo> element.

結果として, MathMLにおいて"演算子として描画される"べきものの一覧は, 普通の感覚では数学の演算子ではない数学表記を含んでいます. 中間や前や後ろに置かれる普通の演算子の他に, その一覧は, 大かっこや丸かっこや"絶対値"の縦棒といった囲い文字, コンマやセミコロンといった区切り, 記号の上の横棒やチルダといった数学のアクセントを含みます. この章では, "演算子"という用語を広い意味で演算子を表すものに使用します.

As a consequence, in MathML the list of things that should "render as an operator" includes a number of notations that are not mathematical operators in the ordinary sense. Besides ordinary operators with infix, prefix, or postfix forms, these include fence characters such as braces, parentheses, and "absolute value" bars; separators such as comma and semicolon; and mathematical accents such as a bar or tilde over a symbol. This chapter uses the term "operator" to refer to operators in this broad sense.

<mo>要素は, 2.1.3 共通の属性で述べられている属性と, 次の属性を持ちます.

The <mo> element accepts the attributes described in 2.1.3 Global Attributes as well as the following attributes:

この仕様書は, fence属性とseparator属性に指定する何ら注目すべき挙動を定義していません.

This specification does not define any observable behavior that is specific to the fence and separator attributes.

注意
Note
著者は, 演算子の特定の意味を述べるのに, fenceseparatorを使ってもよいです. 既定値は, Operators_fenceテーブルおよびOperators_separatorテーブルから決定されるか, もしくは演算子辞書の人が判読できるヴァージョンと等価であってよいです.
Authors may use the fence and separator to describe specific semantics of operators. The default values may be determined from the Operators_fence and Operators_separator tables, or equivalently the human-readable version of the operator dictionary.

次の例において, mo要素は, 二項演算子+に対して使用されています. 通常の間隔の取り方では, 演算子の周囲に左右対称に取ります. その演算子が前置演算子として取り扱われるよう強制するのにform属性を頼ったなら, 隙間の無い間隔の取り方が利用されます. 間隔の取り方は, 明確にlspace属性とrspace属性を用いて, 指定することもできます.

In the following example, the mo element is used for the binary operator +. Default spacing is symmetric around that operator. A tigher spacing is used if you rely on the form attribute to force it to be treated as a prefix operator. Spacing can also be specified explicitly using the lspace and rspace attributes.

<math>
  <mn>1</mn>
  <mo>+</mo>
  <mn>2</mn>
  <mo form="prefix">+</mo>
  <mn>3</mn>
  <mo lspace="2em">+</mo>
  <mn>4</mn>
  <mo rspace="3em">+</mo>
  <mn>5</mn>
</math>
mo example 1

もう1つの例は, 総和のよう大きな演算子に対するものです. displaystyleがtrueの場合, そのような演算子は, 大きく描画されますが, largeop属性によって変更できます. displaystyleがfalseの場合, 下側の添え字は, 実際のところ, 下付きの添え字として描画されますが, movablelimits属性によって変更できます.

Another use case is for big operators such as summation. When displaystyle is true, such an operator is drawn larger but one can change that with the largeop attribute. When displaystyle is false, underscripts are actually rendered as subscripts but one can change that with the movablelimits attribute.

<math>
  <mrow displaystyle="true">
  <munder>
    <mo></mo>
    <mn>5</mn>
  </munder>
  <munder>
    <mo largeop="false"></mo>
    <mn>6</mn>
  </munder>
  </mrow>
  <mrow>
    <munder>
      <mo></mo>
      <mn>5</mn>
    </munder>
    <munder>
      <mo movablelimits="false"></mo>
      <mn>7</mn>
    </munder>
  </mrow>
</math>
mo example 2

演算子は, かっこ, アクセント, 矢印などといった伸長される記号としても使用されます. 次の例では, 縦の矢印がmspace要素の高さに伸長されています. 例えば, 伸長されない矢印を強調するためにstretchy属性を用いて, 通常の伸長される挙動を上書きできます. symmetric属性は, 演算子が数学軸(分数の線)の上下で対象に伸長すべきかどうか示すことを可能にします. 最終的に, minsize属性とmaxsize属性は, 伸長されるサイズに追加の制限を加えます.

Operators are also used for stretchy symbols such as fences, accents, arrows etc. In the following example, the vertical arrow stretches to the height of the mspace element. One can override default stretch behavior with the stretchy attribute e.g. to force an unstretched arrow. The symmetric attribute allows to indicate whether the operator should stretch symmetrically above and below the math axis (fraction bar). Finally the minsize and maxsize attributes add additional constraints over the stretch size.

<math>
  <mfrac>
    <mspace height="50px" depth="50px" width="10px" style="background: blue"/>
    <mspace height="25px" depth="25px" width="10px" style="background: green"/>
  </mfrac>
  <mo></mo>
  <mo stretchy="false"></mo>
  <mo symmetric="true"></mo>
  <mo minsize="250px"></mo>
  <mo maxsize="50px"></mo>
</math>
mo example 3

演算子のプロパティの既定値は, 3.2.4.2 辞書を基にした属性で説明されているように, 辞書を基にしていることに注意して下さい. 例えば, 二項演算子は, 典型的に初期状態で, 周囲に左右対称な間隔を持ち, 一方, かっこは, 初期状態で一般に伸長されます.

Note that the default properties of operators are dictionary-based, as explained in 3.2.4.2 Dictionary-based attributes. For example a binary operator typically has default symmetric spacing around it while a fence is generally stretchy by default.

3.2.4.1 装飾された演算子
Embellished operators

MathMLコア要素は, 次の場合, 装飾された演算子です.

A MathML Core element is an embellished operator if it is:

  1. mo要素.
    An mo element;
  2. 最初のフロー内子要素が存在し, その要素が装飾された演算子である, 添え字要素またはmfrac.
    a scripted element or an mfrac, whose first in-flow child exists and is an embellished operator;
  3. フロー内子要素が(順番によらず)1個の装飾された演算子と0個以上の空白のような要素から構成される, グループ要素またはmpadded.
    a grouping element or mpadded, whose in-flow children consist (in any order) of one embellished operator and zero or more space-like elements.

装飾された演算子核となる演算子は, 次のとおり再帰的に定義された<mo>要素です.

The core operator of an embellished operator is the <mo> element defined recursively as follows:

  1. mo要素の核となる演算子は, その要素自身です.
    The core operator of an mo element; is the element itself.
  2. 装飾された添え字要素またはmfrac要素の核となる演算子は, 最初のフロー内子要素の核となる演算子です.
    The core operator of an embellished scripted element or mfrac element is the core operator of its first in-flow child.
  3. 装飾されたグループ要素またはmpaddedの核となる演算子は, ただ1つの装飾された演算子フロー内子要素の核となる演算子です.
    The core operator of an embellished grouping element or mpadded is the core operator of its unique embellished operator in-flow child.

装飾された演算子伸長軸は, 単独の文字cが行内軸方向の固有の伸長軸を持っていて, 核となる演算子がその文字のみから構成される文字列だけを含んでいるなら, 行内軸です. そうでなければ, 装飾された演算子の伸長軸は, ブロック軸です.

The stretch axis of an embellished operator is inline if its core operator contains only text content made of a single character c, and that character has inline intrinsic stretch axis. Otherwise, the stretch axis of the embellished operator is block.

名前無し<mrow> ボックスグループ要素として扱われる場合には, 同じ定義が, 視覚的書式モデルにおけるボックスに適用されます.

The same definitions apply for boxes in the visual formatting model where an anonymous <mrow> box is treated as a grouping element.

3.2.4.2 辞書を基にした属性
Dictionary-based attributes

装飾された演算子formプロパティは, infix, prefix, postfixのいずれかです. mo要素における, このプロパティに対応するform属性は, もし存在するなら, 大文字・小文字を区別せずにそれらの値の1つに一致しなければなりません.

The form property of an embellished operator is either infix, prefix or postfix. The corresponding form attribute on the mo element, if present, must be an ASCII case-insensitive match to one of these values.

装飾された演算子formを決定するためのアルゴリズムは, 次のとおりです.

The algorithm for determining the form of an embellished operator is as follows:

  1. form属性が存在し, 核となる演算子で有効な場合, その全て小文字にした値が使用されます.
    If the form attribute is present and valid on the core operator, then its ASCII lowercased value is used.
  2. 装飾された演算子が, グループ要素, mpadded, msqrtの最初のフロー内子要素で, (全ての空白のような要素を無視したうえで)1つ以上のフロー内子要素と一緒の場合, その演算子はprefix形式を持ちます.
    If the embellished operator is the first in-flow child of a grouping element, mpadded or msqrt with more than one in-flow child (ignoring all space-like children) then it has form prefix.
  3. または, 装飾された演算子が, グループ要素, mpadded, msqrtの最後のフロー内子要素で, (全ての空白のような子要素を無視したうえで)1つ以上のフロー内子要素と一緒の場合, その演算子はpostfix形式を持ちます.
    Or, if the embellished operator is the last in-flow child of a grouping element, mpadded or msqrt with more than one in-flow child (ignoring all space-like children) then it has form postfix.
  4. または, 装飾された演算子が添え字要素フロー内要素で, 最初のフロー内子要素でない場合, その演算子はpostfix形式を持ちます.
    Or, if the embellished operator is an in-flow child of a scripted element, other than the first in-flow child, then it has form postfix.
  5. そうでない場合, 装飾された演算子は, infix形式を持ちます.
    Otherwise, the embellished operator has form infix.

装飾された演算子stretchyプロパティ, symmetricプロパティ, largeopプロパティ, movablelimitsプロパティは, falseまたはtrueです. 後者の場合, 装飾された演算子はそのプロパティを持つと言われます. mo要素において, これらのプロパティに対応するstretchy属性, symmetric属性, largeop属性, movablelimits属性は, もし存在するなら, ブール値でなければなりません.

The stretchy, symmetric, largeop, movablelimits properties of an embellished operator are either false or true. In the latter case, it is said that the embellished operator has the property. The corresponding stretchy, symmetric, largeop, movablelimits attributes on the mo element, if present, must be a boolean.

装飾された演算子lspaceプロパティ, rspaceプロパティ, minsizeプロパティは, <length-percentage>(訳注:長さや百分率)です. 装飾された演算子maxsizeプロパティは, <length-percentage>または∞のどちらかです. mo要素のlspace属性, rspace属性, minsize属性, maxsize属性は, もし存在するなら, <length-percentage>でなければなりません.

The lspace, rspace, minsize properties of an embellished operator are <length-percentage>. The maxsize property of an embellished operator is either a <length-percentage> or ∞. The lspace, rspace, minsize and maxsize attributes on the mo element, if present, must be a <length-percentage>.

装飾された演算子のプロパティを決定するアルゴリズムは, 次のとおりです.

The algorithm for determining the properties of an embellished operator is as follows:

  1. 対応するstretchy, symmetric, largeop, movablelimits, lspace, rspace, maxsize, minsizeの属性が存在し,核となる演算子で有効な場合, その全て小文字にした値が使用されます.
    If the corresponding stretchy, symmetric, largeop, movablelimits, lspace, rspace, maxsize or minsize attribute is present and valid on the core operator, then the ASCII lowercased value of this property is used.
  2. そうでない場合, 装飾された演算子のformを決定するためのアルゴリズムが実行されます.
  3. 核となる演算子が文字列の中身Contentのみを含んでいる場合, 前の工程で計算されたformFormとして, 演算子の種類を決定するアルゴリズム(Content, Form)の結果に, Categoryを設定します.
    If the core operator contains only text content Content, then set Category to the result of the algorithm to determine the category of an operator (Content, Form) where Form is the form calculated at the previous step.
  4. CategoryDefaultで, 装飾された演算子form核となる演算子の属性として明確に指定されていなかった場合, 次のとおりです.
    If Category is Default and the form of embellished operator was not explicitly specified as an attribute on its core operator:
    1. Forminfixとした場合の演算子の種類を決定するアルゴリズムの結果に, Categoryを設定します.
      Set Category to the result of the algorithm to determine the category of an operator (Content, Form) where Form is infix.
    2. CategoryDefaultの場合, Formpostfixに設定して再度上のアルゴリズムを実行します.
      If Category is Default, then run the algorithm again with Form set to postfix.
    3. CategoryDefaultの場合, Formprefixに設定して再度上のアルゴリズムを実行します.
      If Category is Default, then run the algorithm again with Form set to prefix.
  5. 演算子の種類Categoryから演算子のプロパティを決定するアルゴリズムを実行します.

配置の途中で利用される場合, stretchy, symmetric, largeop, movablelimits, lspace, rspace, minsizeの値は, 次の追加の決まりと一緒に装飾された演算子のプロパティを決定するアルゴリズムによって得られます.

When used during layout, the values of stretchy, symmetric, largeop, movablelimits, lspace, rspace, minsize are obtained by the algorithm for determining the properties of an embellished operator with the following extra resolutions:

  • lspace, rspaceに対する百分率の値は, 辞書から読み取られた値, または上で述べた予備の値に対するものと解釈されます.
    Percentage values for lspace, rspace are interpreted relative to the value read from the dictionary or to the fallback value above.
  • minsizemaxsizeに対する百分率の値の解釈は, 3.2.4.3 演算子の配置で述べています.
    Interpretation of percentage values for minsize and maxsize are described in 3.2.4.3 Layout of operators.
  • lspace, rspace, minsize, maxsizeに対するフォントに関連する長さは, 装飾された演算子のフォント書式ではなく, 核となる演算子の書式に対して決まります.
    Font-relative lengths for lspace, rspace, minsize and maxsize rely on the font style of the core operator, not the one of the embellished operator.
3.2.4.3 演算子の配置
Layout of operators

<mo>要素が, block mathまたはinline mathに等しいdisplayプロパティの算出値を持たないならば, その要素は, 指定されたプロパティに対応する値について述べているCSS仕様書によって配置されます. そうでなければ, 下記の配置が行われます.

If the <mo> element does not have its computed display property equal to block math or inline math then it is laid out according to the CSS specification where the corresponding value is described. Otherwise, the layout below is performed.

演算子の文字列は, <mo>要素のvisibilityvisibleの場合のみ, 描画されなければなりません. その場合, <mo>要素のcolorで描画されなければなりません.

The text of the operator must only be painted if the visibility of the <mo> element is visible. In that case, it must be painted with the color of the <mo> element.

演算子は, 次のとおり配置されます.

Operators are laid out as follows:

  1. <mo>要素の中身が単独の文字cから成り立っている訳ではない場合, 3.2.1.1 <mtext>の配置の配置アルゴリズムを利用します.
    If the content of the <mo> element is not made of a single character c then fall back to the layout algorithm of 3.2.1.1 Layout of <mtext>.
  2. 演算子がstretchyプロパティを持っている場合.
    If the operator has the stretchy property:
  3. 演算子がlargeopプロパティを持っていて, <mo>要素のmath-stylenormalの場合, 次のとおりです.
    If the operator has the largeop property and if math-style on the <mo> element is normal, then:
    1. 少なくともDisplayOperatorMinHeightの高さの字形を試したり見つけたりするために, MathVariantsテーブルを利用します. 何も見つからなかった場合, 最も大きい基本とならない字形が予備として使われます. 何も見つからなかった場合, 3.2.1.1 <mtext>の配置の配置アルゴリズムを利用します.

      Use the MathVariants table to try and find a glyph of height at least DisplayOperatorMinHeight. If none is found, fall back to the largest non-base glyph. If none is found, fall back to the layout algorithm of 3.2.1.1 Layout of <mtext>.

    2. 演算子の数学コンテンツの最小内容行内サイズ, 最大内容行内サイズ, 行内サイズ, ブロックの尺度は, 見つかった字形によって与えられます.
      The min-content inline size, max-content inline size, inline size and block metrics of the math content are given by the glyph found.
    3. 字形を描画します.
      Paint the glyph.
    8 総和記号の基となるサイズとディスプレイスタイルの(大きな)サイズ
    Figure 8 Base and displaystyle sizes of the summation symbol
  4. その他の場合は, § 3.2.1.1 <mtext>の配置の配置アルゴリズムを利用します.
    Otherwise fall back to the layout algorithm of 3.2.1.1 Layout of <mtext>.

伸長された字形を形作るアルゴリズムが, 上記の工程のどこかで利用される場合, 演算子の数学コンテンツのイタリック補正は, そのアルゴリズムによって返された値に設定されます.

If the algorithm to shape a stretchy glyph has been used for one of the step above, then the italic correction of the math content is set to the value returned by that algorithm.

注意
Note
maxsizeがその既定値である∞と等しい場合, minsize ≤ maxsizeは満たされますが, maxsize < Tは満たされません.
If maxsize is equal to its default value ∞ then minsize ≤ maxsize is satisfied but maxsize < T is not.

3.2.5 空白 <mspace>
Space <mspace>

mspace空要素は, 属性により設定された何らかの望ましい大きさの空白を表します.

The mspace empty element represents a blank space of any desired size, as set by its attributes.

<mspace>要素は, 2.1.3 共通の属性で述べられている属性と, 次の属性を持ちます.

The <mspace> element accepts the attributes described in 2.1.3 Global Attributes as well as the following attributes:

width, height, depthは, もし存在するなら, 有効な<length-percentage>(訳注:長さや百分率)である値を持たなければなりません.

The width, height, depth, if present, must have a value that is a valid <length-percentage>.

  • width属性が存在し, 百分率でない有効な値の場合, その属性は, 要素のwidthプロパティをその属性値に対応する値に設定する表現の助言として使用されます.
    If the width attribute is present, valid and not a percentage then that attribute is used as a presentational hint setting the element's width property to the corresponding value.
  • height属性が存在しないか, 無効な値か百分率の場合, 所要の行アセントは0です. そうでない場合, 所要の行アセントは, 負の数を0に固定した, height属性の解決値です.
    If the height attribute is absent, invalid or a percentage then the requested line-ascent is 0. Otherwise the requested line-ascent is the resolved value of the height attribute, clamping negative values to 0.
  • height属性とdepth属性が存在し, 百分率でない有効な値の場合, 要素のheightプロパティを, "calc(", height属性の値, " + ", depth属性の値, ")"を連結した文字列に設定する表現の助言として使用されます. それらの属性のうち1つしか存在せず, 百分率でない有効な値の場合, 要素のheightプロパティを対応する属性値に設定する表現の助言として扱われます.
    If both the height and depth attributes are present, valid and not a percentage then they are used as a presentational hint setting the element's height property to the concatenation of the strings "calc(", the height attribute value, " + ", the depth attribute value, and ")". If only one of these attributes is present, valid and not a percentage then it is treated as a presentational hint setting the element's height property to the corresponding value.

次の例において, mspaceは, 式の中の空白を強制するために使用されています(1px幅の青線は空白が簡単に確認できるように加えられています).

In the following example, mspace is used to force spacing within the formula (a 1px blue border is added to easily visualize the space):

<math>
  <mn>1</mn>
  <mspace width="1em"
          style="border-top: 1px solid blue"/> 
  <mfrac>
    <mrow>
      <mn>2</mn>
      <mspace depth="1em"
              style="border-left: 1px solid blue"/>
    </mrow>
    <mrow>
      <mn>3</mn>
      <mspace height="2em"
              style="border-left: 1px solid blue"/>
    </mrow>
  </mfrac>
</math>
mspace example

<mspace>要素が, block mathまたはinline mathに等しいdisplayプロパティの算出値を持たない場合, その要素は, 指定されたプロパティに対応する値に述べているCSS仕様書によって配置されます. そうでなければ, <mspace>要素は, 9で示されたように配置されます. 数学コンテンツの最小内容行内サイズ, 最大内容行内サイズ, 行内サイズは, widthプロパティの解決値に等しいです. 数学コンテンツのブロックサイズは, heightプロパティの解決値に等しいです. 数学コンテンツの行アセントは, 上記で決めた所要の行アセントに等しいです.

If the <mspace> element does not have its computed display property equal to block math or inline math then it is laid out according to the CSS specification where the corresponding value is described. Otherwise, the <mspace> element is laid out as shown on Figure 9. The min-content inline size, max-content inline size and inline size of the math content are equal to the resolved value of the width property. The block size of the math content is equal to the resolved value of the height property. The line-ascent of the math content is equal to the requested line-ascent determined above.

9 <mspace>要素に対するボックスモデル
Figure 9 Box model for the <mspace> element
注意
Note
高さ/深さという用語は, [MATHML3]から来ており, それら自身は[TEXBOOK]からもたらされました.
The terminology height/depth comes from [MATHML3], itself inspired from [TEXBOOK].
3.2.5.1 空白のような要素の定義
Definition of space-like elements

数々のMathMLプレゼンテーション要素が, 典型的に空白として描画され, それらが現れても式の数学的意味に影響を与えないという点で"空白のような要素"です. 結果として, それらの要素は, 他のMathMLの式で, 多少異なる機能を持っています.

A number of MathML presentation elements are "space-like" in the sense that they typically render as whitespace, and do not affect the mathematical meaning of the expressions in which they appear. As a consequence, these elements often function in somewhat exceptional ways in other MathML expressions.

次のことに当てはまるなら, そのMathMLコア要素空白のような要素です.

A MathML Core element is a space-like element if it is:

  1. mtextまたはmspace.
    an mtext or mspace;
  2. フロー内子要素が全て空白のような要素であるグループ要素またはmpadded.
    or a grouping element or mpadded all of whose in-flow children are space-like.

名前無し<mrow> ボックスグループ要素として扱われる場合には, 同じ定義が, 視覚的書式モデルにおけるボックスに適用されます.

The same definitions apply for boxes in the visual formatting model where an anonymous <mrow> box is treated as a grouping element.

注意
Note
mphantomは, その中身が空白のような要素でない場合, 自動的には空白のような要素と定義されていないことに注意して下さい. これは, 演算子の間隔が隣接する要素が空白の要素であるかどうかによって影響を受けるためです. <mphantom>要素は第一に式を揃えることの助けとなることを意図しているので, <mphantom>に隣接する要素は, <mphantom>と同じ大きさの空白とではなく, <mphantom>の中身に隣接しているかのようにふるまうべきです.
Note that an mphantom is not automatically defined to be space-like, unless its content is space-like. This is because operator spacing is affected by whether adjacent elements are space-like. Since the <mphantom> element is primarily intended as an aid in aligning expressions, operators adjacent to an <mphantom> should behave as if they were adjacent to the contents of the <mphantom>, rather than to an equivalently sized area of whitespace.

3.2.6 文字列 <ms>
String Literal <ms>

ms要素は, 数式処理システムや"プログラミング言語"を含む他のシステムで解釈されるであろう式の中の"文字列"を表すのに使われます.

ms element is used to represent "string literals" in expressions meant to be interpreted by computer algebra systems or other systems containing "programming languages".

<ms>要素は, 2.1.3 共通の属性で述べられている属性を持ちます. この要素の配置アルゴリズムは, mtextと同じです.

The <ms> element accepts the attributes described in 2.1.3 Global Attributes. Its layout algorithm is the same as the mtext element.

次の例において, msは文字そのままの文字列を書くのに利用されています.

In the following example, ms is used to write a literal string of characters:

<math>
  <mi>s</mi>
  <mo>=</mo>
  <ms>"hello world"</ms>
</math>
ms example
注意
Note
MathML3では, 開始と終了の引用符として使われる文字をそれぞれ指定するのに, lquote属性とrquote属性を利用することができました. それらは, もはや対応されておらず, その代わり, 引用符は<ms>の文字列の一部として指定されなければなりません. 視覚的な描画を保つために従来の文書にCSSの決まりを加えることができます. 例えば, 左から右の方向において次のとおりです.
In MathML3, it was possible to use the lquote and rquote attributes to respectively specify the strings to use as opening and closing quotes. These are no longer supported and the quotes must instead be specified as part of the text of the <ms> element. One can add CSS rules to legacy documents in order to preserve visual rendering. For example, in left-to-right direction:
ms:before, ms:after {
  content: "\0022";
}
ms[lquote]:before {
  content: attr(lquote);
}
ms[rquote]:after {
  content: attr(rquote);
}

3.3 一般的な配置要素
General Layout Schemata

素子の他に, 様々な種類のMathMLプレゼンテーション要素があります. ある種類の要素は上付きの式や下付きの式といった様々な"添え字"の表記を扱います. もう1つの種類のものは行列や表に関係しています. この節で論じる残りの要素は, 分数や根号といった他の基本となる表記を記述したり, もしくは書式の特性を設定し, エラー処理を行うような一般的な機能を扱ったりします.

Besides tokens there are several families of MathML presentation elements. One family of elements deals with various "scripting" notations, such as subscript and superscript. Another family is concerned with matrices and tables. The remainder of the elements, discussed in this section, describe other basic notations such as fractions and radicals, or deal with general functions such as setting style properties and error handling.

3.3.1 式のグループ<mrow>
Group Sub-Expressions <mrow>

mrow要素は, 任意の数の式を一緒にグループ化するのに使われます. グループは, 通常, その中で"演算子"としてふるまう1つ以上の<mo>と, それらの"被演算子"となる1つ以上の式から構成されます.

The mrow element is used to group together any number of sub-expressions, usually consisting of one or more <mo> elements acting as "operators" on one or more other expressions that are their "operands".

次の例において, mrowは, 和"1 + 2/3"を分子(mfracの最初の子要素)としてグループ化し, かっこで囲われた5乗される式(msupの最初の子要素)を構成するのに使われています. mrowは, そのグループ化された中身に単独で視覚的なかっこを加えず, mo要素を使用して, 明確にそれらを指定しなければならないことに注意して下さい.

In the following example, mrow is used to group a sum "1 + 2/3" as a fraction numerator (first child of mfrac) and to construct a fenced expression (first child of msup) that is raised to the power of 5. Note that mrow alone does not add visual fences around its grouped content, one has to explicitly specify them using the mo element.

mrow要素の中で, 子要素の(欧文ベースラインまたは数学基準線による)縦方向の位置揃えが適切に実施され, かっこが縦方向に伸長され, 2項演算子+の周りの間隔が自動的に計算されることが分かるでしょう.

Within the mrow elements, one can see that vertical alignment of children (according to the alphabetic baseline or the mathematical baseline) is properly performed, fences are vertically stretched and spacing around the binary + operator automatically calculated.

<math>
  <msup>
    <mrow>
      <mo>(</mo>
      <mfrac>
        <mrow>
          <mn>1</mn>
          <mo>+</mo>
          <mfrac>
            <mn>2</mn>
            <mn>3</mn>
          </mfrac>
        </mrow>
        <mn>4</mn>
      </mfrac>
      <mo>)</mo>
    </mrow>
    <mn>5</mn>
  </msup>
</math>
mrow example

<mrow>要素は, § 2.1.3 共通の属性で述べられている属性を持ちます. フロー内の子要素child1, child2, … , childNを持つ<mrow>要素は, 10で示されているように配置されます. 子要素のボックスは, 全て欧文ベースラインで揃えられて, 1つ1つ1列に並べられます.

The <mrow> element accepts the attributes described in 2.1.3 Global Attributes. An <mrow> element with in-flow children child1, child2, …, childN is laid out as shown on Figure 10. The child boxes are put in a row one after the other with all their alphabetic baselines aligned.

10 <mrow>要素に対するボックスモデル
Figure 10 Box model for the <mrow> element
注意
Note
ボックスモデルが 欧文ベースラインの位置揃えを確かなものにすることから, 分数の線または上下対象に伸長された演算子は, 軸高さが全てのフロー内子要素で同一という典型的な状況で, 数学軸に沿っても揃えられるでしょう.
Because the box model ensures alignment of alphabetic baselines, fraction bars or symmetric stretchy operators will also be aligned along the math axis in the typical case when AxisHeight is the same for all in-flow children.
3.3.1.1 ブロック軸に沿って伸長される演算子に対するアルゴリズム
Algorithm for stretching operators along the block axis
11 ブロック軸に沿った対称や非対称の演算子の伸長
Figure 11 Symmetric and non-symmetric stretching of operators along the block axis

ブロック軸に沿って伸長される演算子に対するアルゴリズムは, 次の工程で構成されています.

The algorithm for stretching operators along the block axis consists in the following steps:

  1. ブロック伸長サイズ制限または行内伸長サイズ制限がある場合, 配置される要素は, 装飾された演算子です. 装飾された演算子である1つのフロー内子要素を, 同じ伸長サイズ制限を伴って配置し, 他の全てのフロー内子要素を何ら伸長サイズ制限無しに配置し, 完了します.
    If there is a block stretch size constraint or an inline stretch size constraint then the element being laid out is an embellished operator. Lay out the one in-flow child that is an embellished operator with the same stretch size constraint and all the other in-flow children without any stretch size constraint and stop.
  2. そうでない場合, フロー内子要素の一覧を, stretchyプロパティとブロック伸長軸を持つ装飾された演算子を含む最初の一覧LToStretchと2番目の一覧LNotToStretchに分けます.
    Otherwise, split the list of in-flow children into a first list LToStretch containing embellished operators with a stretchy property and block stretch axis; and a second list LNotToStretch.
  3. LNotToStretchの全ての中身で, 何ら伸長サイズ制限なしに配置を実施します. もし, LToStretchが空の場合, 完了します. LNotToStretchが空の場合, LToStretchの全ての中身で, 伸長サイズ制限0として配置を実施します.
    Perform layout without any stretch size constraint on all the items of LNotToStretch. If LToStretch is empty then stop. If LNotToStretch is empty, perform layout with stretch size constraint 0 on all the items of LToStretch.
  4. 前の工程で配置されたフロー内子要素のマージンボックスの最大字面アセントと最大字面ディセントとして, 制限の無い目標のサイズUascentUdescentをそれぞれ計算します.
    Calculate the unconstrained target sizes Uascent and Udescent as respectively the maximum ink ascent and maximum ink descent of the margin boxes of in-flow children that have been laid out in the previous step.
  5. LToStretchの全ての要素を, ブロック伸長サイズ制限(Uascent, Udescent)と共に配置または再配置します.
    Lay out or relayout all the elements of LToStretch with block stretch size constraint (Uascent, Udescent).
3.3.1.2 <mrow>の配置
Layout of <mrow>

ボックスが名前無し<mrow>ボックスでなく, 関連付けられた要素がblock mathまたはinline mathに等しいdisplayプロパティの算出値を持たないならば, その要素は, 指定されたプロパティに対応する値について述べているCSS仕様書によって配置されます. そうでなければ, 下記の配置が行われます.

If the box is not an anonymous <mrow> box and the associated element does not have its computed display property equal to block math or inline math then it is laid out according to the CSS specification where the corresponding value is described. Otherwise, the layout below is performed.

子要素が装飾された演算子でなく, 0でないイタリック補正を持つなら, 子要素のボックスは傾いています.

A child box is slanted if it is not an embellished operator and has nonzero italic correction.

注意
Note
大きい演算子は, 0でないイタリック補正を持ってもよいですが, それらの演算子は, 添え字を付け加えるときに使用されます. もっと一般的に, 全ての装飾された演算子は, lspacerspaceで指定されたように, その周囲の間隔が計算されることから, 傾いていないように取り扱われます.
Large operators may have nonzero italic correction but that one is used when attaching scripts. More generally, all embellished operators are treated as non-slanted since the spacing around them is calculated as specified by lspace and rspace.

最小内容行内サイズ(または最大内容行内サイズ)は, 次のアルゴリズムを使用して計算されます.

The min-content inline size (respectively max-content inline size) are calculated using the following algorithm:

  1. ボックスがmath要素に一致するか, または, 装飾された演算子でなければ, add-spaceをtrueに設定します. そうでなければ, falseに設定します.
    Set add-space to true if the box corresponds to a math element or is not an embellished operator; and to false otherwise.
  2. inline-offsetを0に設定します.
    Set inline-offset to 0.
  3. previous-italic-correctionを0に設定します.
    Set previous-italic-correction to 0.
  4. フロー内子要素に対して次のことを行います.
    For each in-flow child:
    1. 子要素が傾いていないならば, inline-offsetprevious-italic-correction分増やします.
      If the child is not slanted, then increment inline-offset by previous-italic-correction.
    2. 子要素が装飾された演算子add-spaceがtrueならば, inline-offsetをその子要素のlspaceプロパティ分増やします.
      If the child is an embellished operator and add-space is true then increment inline-offset by its lspace property.
    3. inline-offsetを, 子要素のマージンボックス最小内容行内サイズ(または最大内容行内サイズ)分増やします.
      Increment inline-offset by the min-content inline size (respectively max-content inline size) of the child's margin box.
    4. 子要素が傾いているならば, previous-italic-correctionをその要素のイタリック補正に設定します. そうでなければ, 0に設定します.
      If the child is slanted then set previous-italic-correction to its italic correction. Otherwise set it to 0.
    5. 子要素が装飾された演算子add-spaceがtrueならば, inline-offsetをその子要素のrspaceプロパティ分増やします.
      If the child is an embellished operator and add-space is true then increment inline-offset by its rspace property.
  5. inline-offsetprevious-italic-correction分増やします.
    Increment inline-offset by previous-italic-correction.
  6. inline-offsetを返します.
    Return inline-offset.

フロー内子要素は, ブロック軸に沿って伸長される演算子に対するアルゴリズムを使用して配置されます.

The in-flow children are laid out using the algorithm for stretching operators along the block axis.

要素の数学コンテンツの行内サイズは, 数学コンテンツの最小内容行内サイズ最大内容行内サイズ の計算と同じように, フロー内子要素のマージンボックス行内サイズを代わりに使用して計算されます.

The inline size of the math content is calculated like the min-content inline size and max-content inline size of the math content, using the inline size of the in-flow children's margin boxes instead.

要素の数学コンテンツの字面行アセント(または行アセント)は, フロー内子要素全てのマージンボックスにおける字面行アセント(または行アセント)の最大値です. 同様に, 数学コンテンツの字面行ディセント(または行ディセント)は, フロー内子要素全てのマージンボックスにおける字面行ディセント(または字面行アセント)の最大値です.

The ink line-ascent (respectively line-ascent) of the math content is the maximum of the ink line-ascents (respectively line-ascents) of all the in-flow children's margin boxes. Similarly, the ink line-descent (respectively line-descent) of the math content is the maximum of the ink line-descents (respectively ink line-ascents) of all the in-flow children's margin boxes.

フロー内子要素の位置は, 次のアルゴリズムを使用して決められます.

The in-flow children are positioned using the following algorithm:

  1. ボックスがmathに一致するか, または, 装飾された演算子でなければ, add-spaceをtrueに設定します. そうでなければ, falseに設定します.
    Set add-space to true if the box corresponds to a math element or is not an embellished operator; and to false otherwise.
  2. inline-offsetを0に設定します.
    Set inline-offset to 0.
  3. previous-italic-correctionを0に設定します.
    Set previous-italic-correction to 0.
  4. フロー内子要素に対して次のことを行います.
    For each in-flow child:
    1. 子要素が傾いていないならば, inline-offsetprevious-italic-correction分増やします.
      If the child is not slanted, then increment inline-offset by previous-italic-correction.
    2. 子要素が装飾された演算子add-spaceがtrueならば, inline-offsetをその子要素のlspaceプロパティ分増やします.
      If the child is an embellished operator and add-space is true then increment inline-offset by its lspace property.
    3. 子要素の行内移動距離inline-offsetに設定し, 子要素のブロック移動距離を, 子要素の欧文ベースラインが全体の欧文ベースラインに揃えられるように設定します.
      Set the inline offset of the child to inline-offset and its block offset such that the alphabetic baseline of the child is aligned with the alphabetic baseline.
    4. inline-offsetを子要素のマージンボックス行内サイズ分増やします.
      Increment inline-offset by the inline size of the child's margin box.
    5. 子要素が傾いているならば, previous-italic-correctionをその要素のイタリック補正に設定します. そうでなければ, 0に設定します.
      If the child is slanted then set previous-italic-correction to its italic correction. Otherwise set it to 0.
    6. 子要素が装飾された演算子add-spaceがtrueならば, inline-offsetをその子要素のrspaceプロパティ分増やします.
      If the child is an embellished operator and add-space is true then increment inline-offset by its rspace property.

要素の数学コンテンツのイタリック補正は, previous-italic-correctionの最終的な値である, 最後のフロー内子要素のイタリック補正に設定されます.

The italic correction of the math content is set to the italic correction of the last in-flow child, which is the final value of previous-italic-correction.

3.3.2 分数 <mfrac>
Fractions <mfrac>

mfrac要素は分数に使用されます. また, 二項係数やルジャンドル記号といった分数のようなものを記述するのにも利用されます.

The mfrac element is used for fractions. It can also be used to mark up fraction-like objects such as binomial coefficients and Legendre symbols.

<mfrac>要素が, block mathまたはinline mathに等しいdisplayプロパティの算出値を持たないならば, その要素は, 指定されたプロパティに対応する値について述べているCSS仕様書によって配置されます. そうでなければ, 後で述べる配置が行われます.

If the <mfrac> element does not have its computed display property equal to block math or inline math then it is laid out according to the CSS specification where the corresponding value is described. Otherwise, the layout below is performed.

<mfrac>要素は, 2.1.3 共通の属性で述べられている属性と, 次の属性を持ちます.

The <mfrac> element accepts the attributes described in 2.1.3 Global Attributes as well as the following attribute:

linethickness属性は, 分数の線に対して使用される分数の線の太さを示します. もし存在するなら, この属性は, 有効な<length-percentage>(訳注:長さや百分率)である値を持たなければなりません. その属性が存在しないか無効な値の場合, FractionRuleThicknessが既定値として使用されます. 百分率は, 既定値に対するものとして解釈されます. 負の値は, 0として解釈されます.

The linethickness attribute indicates the fraction line thickness to use for the fraction bar. If present, it must have a value that is a valid <length-percentage>. If the attribute is absent or has an invalid value, FractionRuleThickness is used as the default value. A percentage is interpreted relative to that default value. A negative value is interpreted as 0.

次の例は, 異なるlinethicknessの値を持つ4つの分数を含んでいます. 線は, いつでもプラス記号やマイナス記号の中心に揃えられます. 分子と分母は, 水平方向に中央揃えされます. displaystyleでない分数は, より小さい離隔とフォントサイズを使用します.

The following example contains four fractions with different linethickness values. The bars are always aligned with the middle of plus and minus signs. The numerator and denominator are horizontally centered. The fractions that are not in displaystyle use smaller gaps and font-size.

<math>
  <mn>0</mn>
  <mo>+</mo>
  <mfrac displaystyle="true">
    <mn>1</mn>
    <mn>2</mn>
  </mfrac>
  <mo></mo>
  <mfrac>
    <mn>1</mn>
    <mn>2</mn>
  </mfrac>
  <mo>+</mo>
  <mfrac linethickness="200%">
    <mn>1</mn>
    <mn>234</mn>
  </mfrac>
  <mo></mo>
  <mrow>
    <mo>(</mo>
    <mfrac linethickness="0">
      <mn>123</mn>
      <mn>4</mn>
    </mfrac>
    <mo>)</mo>
  </mrow>
</math>
mfrac example

<mfrac>要素は, displaystylefalseに設定するか, 既にfalseの場合は子要素のscriptlevelを1つ増加させるかします. この要素は, 2番目の子要素のmath-shiftcompactに設定します. 分数の線と他の隣接する部品(例えばマイナス記号または他の分数の線)との視覚的な混同を避けるために, 通常1ピクセルの間隔が要素の周囲に加えられます. ユーザーエージェントのスタイルシートは, 次の決まりを含まなければなりません.

The <mfrac> element sets displaystyle to false, or if it was already false increments scriptlevel by 1, within its children. It sets math-shift to compact within its second child. To avoid visual confusion between the fraction bar and another adjacent items (e.g. minus sign or another fraction's bar), a default 1-pixel space is added around the element. The user agent stylesheet must contain the following rules:

mfrac {
  padding-inline-start: 1px;
  padding-inline-end: 1px;
}
mfrac > * {
  math-depth: auto-add;
  math-style: compact;
}
mfrac > :nth-child(2) {
  math-shift: compact;
}

<mfrac>要素が2つより少ないか多いフロー内子要素を持っている場合, 配置アルゴリズムは, mrowと同じです. そうでない場合, 最初のフロー内子要素は分子と呼ばれ, 2番目のフロー内子要素は分母と呼ばれ, 配置アルゴリズムは後で説明されているとおりです.

If the <mfrac> element has less or more than two in-flow children, its layout algorithm is the same as the mrow element. Otherwise, the first in-flow child is called numerator, the second in-flow child is called denominator and the layout algorithm is explained below.

注意
Note
実際のところ, <mfrac>要素は, 2つのフロー内子要素を持ちます, したがって, CSSの決まりは, 基本的にscriptlevel, displaystyle, math-shift分子分母に対して変更するよう働きます.
In practice, an <mfrac> element has two children that are in-flow. Hence the CSS rules basically perform scriptlevel, displaystyle and math-shift changes for the numerator and denominator.
3.3.2.1 線の太さが0でない分数
Fraction with nonzero line thickness

分数の線の太さが0でない場合, <mfrac>要素は, 12で示されたように配置されます. 分数の線は, <mfrac>要素のvisibilityvisibleの場合のみ描画されなければなりません. この場合, 分数の線は, <mfrac>要素のcolorで描画されなければなりません.

If the fraction line thickness is nonzero, the <mfrac> element is laid out as shown on Figure 12. The fraction bar must only be painted if the visibility of the <mfrac> element is visible. In that case, the fraction bar must be painted with the color of the <mfrac> element.

12 <mfrac>要素に対するボックスモデル
Figure 12 Box model for the <mfrac> element

分数の数学コンテンツの最小内容行内サイズ(または最大内容行内サイズ)は, 分子マージンボックス最小内容行内サイズ(または最大内容行内サイズ)と分母マージンボックス最小内容行内サイズ(または最大内容行内サイズ)の大きい方です.

The min-content inline size (respectively max-content inline size) of content is the maximum between the min-content inline size (respectively max-content inline size) of the numerator's margin box and the min-content inline size (respectively max-content inline size) of the denominator's margin box.

行内伸長サイズ制限またはブロック伸長サイズ制限がある場合, 分子も, 同じサイズ制限を伴って配置され, そうでない場合, 何らサイズ制限無しで配置されます. 分母は, いつでも何らサイズ制限無しに配置されます.

If there is an inline stretch size constraint or a block stretch size constraint then the numerator is also laid out with the same stretch size constraint, otherwise it is laid out without any stretch size constraint. The denominator is always laid out without any stretch size constraint.

分数の数学コンテンツの行内サイズは, 分子マージンボックス行内サイズ分母マージンボックス行内サイズの大きい方です.

The inline size of the math content is the maximum between the inline size of the numerator's margin box and the inline size of the denominator's margin box.

分子移動距離は, 次の中で最大のものです.

NumeratorShift is the maximum between:

分母移動距離は, 次の中で最大のものです.

DenominatorShift is the maximum between:

分数の数学コンテンツの行アセントは, 次の中で最大のものです.

The line-ascent of the math content is the maximum between:

分数の数学コンテンツの行ディセントは, 次の中で最大のものです.

The line-descent of the math content is the maximum between:

分子(または分母)の行内移動距離は, 分数の数学コンテンツの行内サイズの半分 − 分子マージンボックス(または分母マージンボックス)の行内サイズの半分です.

The inline offset of the numerator (respectively denominator) is half the inline size of the math content − half the inline size of the numerator's margin box (respectively denominator's margin box).

分子(または分母)の欧文ベースラインは, 全体の欧文ベースラインから分子移動距離(または分母移動距離)の大きさ分, 行上面(または行下面)の方へずらされます.

The alphabetic baseline of the numerator (respectively denominator) is shifted away from the alphabetic baseline by a distance of NumeratorShift (respectively DenominatorShift) towards the line-over (respectively line-under).

数学コンテンツボックスは, 内容ボックスの中で, お互いのブロック始端が揃えられるように, 左右の両端の真ん中がお互いに同じ場所になるように位置決めされます.

The math content box is placed within the content box so that their block-start edges are aligned and the middles of these edges are at the same position.

分数の線の行内サイズは, 分数の内容ボックス行内サイズで, その行内始端は, 内容ボックスのものに揃えられます. 分数の線の中心は, 数学コンテンツボックス欧文ベースラインから軸高さの大きさ分, 行上面の方へずらされます. 分数の線のブロックサイズは, 分数の線の太さです.

The inline size of the fraction bar is the inline size of the content box and its inline-start edge is the aligned with the one the content box. The center of the fraction bar is shifted away from the alphabetic baseline of the math content box by a distance of AxisHeight towards the line-over. Its block size is the fraction line thickness.

3.3.2.2 線の太さが0の分数
Fraction with zero line thickness

分数の線の太さが0の場合, 0でない場合とは異なり, <mfrac>要素は, 13に示されたように配置されます.

If the fraction line thickness is zero, the <mfrac> element is instead laid out as shown on Figure 13.

13 線の無い<mfrac>要素に対するボックスモデル
Figure 13 Box model for the <mfrac> element without bar

分数の数学コンテンツの最小内容行内サイズ, 最大内容行内サイズ, 行内サイズは, 3.3.2.1 線の太さが0でない分数と同じ方法で計算されます.

The min-content inline size, max-content inline size and inline size of the math content are calculated the same as in 3.3.2.1 Fraction with nonzero line thickness.

行内伸長サイズ制限またはブロック伸長サイズ制限がある場合, 分子も, 同じサイズ制限を伴って配置され, そうでない場合, 何らサイズ制限無しで配置されます. 分母は, いつでも何らサイズ制限無しに配置されます.

If there is an inline stretch size constraint or a block stretch size constraint then the numerator is also laid out with the same stretch size constraint and otherwise it is laid out without any stretch size constraint. The denominator is always laid out without any stretch size constraint.

math-stylecompactの場合, 上方移動距離下方移動距離は, それぞれStackTopShiftUpStackBottomShiftDownに設定されます. そうでなくmath-stylenormalの場合, それらは, それぞれStackTopDisplayStyleShiftUpStackBottomDisplayStyleShiftDownに設定されます.

If the math-style is compact then TopShift and BottomShift are respectively set to StackTopShiftUp and StackBottomShiftDown. Otherwise math-style is normal and they are respectively set to StackTopDisplayStyleShiftUp and StackBottomDisplayStyleShiftDown.

離隔は, (下方移動距離分母マージンボックス字面行アセント) + (上方移動距離分子マージンボックス字面行ディセント)であると定義されます. math-stylecompactなら, 最小離隔は, StackGapMinで, そうでなくmath-stylenormalならStackDisplayStyleGapMinです. Δ = 最小離隔離隔が正の場合, 上方移動距離下方移動距離は, それぞれΔ/2とΔ − Δ/2の分増やされます.

The Gap is defined to be (BottomShift − the ink line-ascent of the denominator's margin box) + (TopShift − the ink line-descent of the numerator's margin box). If math-style is compact then GapMin is StackGapMin, otherwise math-style is normal and it is StackDisplayStyleGapMin. If Δ = GapMinGap is positive then TopShift and BottomShift are respectively increased by Δ/2 and Δ − Δ/2.

分数の数学コンテンツの行アセントは, 次の中で最大のものです.

The line-ascent of the math content is the maximum between:

分数の数学コンテンツの行ディセントは, 次の中で最大のものです.

The line-descent of the math content is the maximum between:

分子分母行内移動距離は, § 3.3.2.1 線の太さが0でない分数と同じように計算されます.

The inline offsets of the numerator and denominator are calculated the same as in 3.3.2.1 Fraction with nonzero line thickness.

分子(または分母)の欧文ベースラインは, 全体の欧文ベースラインから上方移動距離(または − 下方移動距離) の大きさ分, 行上面(または行下面)の方へずらされます.

The alphabetic baseline of the numerator (respectively denominator) is shifted away from the alphabetic baseline by a distance of TopShift (respectively − BottomShift) towards the line-over (respectively line-under).

数学コンテンツボックスは, 内容ボックスの中で, お互いのブロック始端が揃えられるように, 左右の両端の真ん中がお互いに同じ場所になるように位置決めされます.

The math content box is placed within the content box so that their block-start edges are aligned and the middles of these edges are at the same position.

3.3.3 <msqrt>, <mroot>
Radicals <msqrt>, <mroot>

根要素は, 根号√と中身の上の線を伴う式を構成します. msqrt要素は平方根に使用され, mroot要素は, 例えば立方根といった指数付きの根を描くのに使用されます.

The radical elements construct an expression with a root symbol √ with a line over the content. The msqrt element is used for square roots, while the mroot element is used to draw radicals with indices, e.g. a cube root.

<msqrt>要素と<mroot>要素は, 2.1.3 共通の属性で述べられている属性を持ちます.

The <msqrt> and <mroot> elements accept the attributes described in 2.1.3 Global Attributes.

次の例は, msqrtを用いて書かれた平方根と, mrootを用いて書かれた立方根を含んでいます. msqrtは, 複数の子要素を持っており, 平方根は, それらの全てに適用されることに注意して下さい. mrootは, ちょうど2つの子要素を持っています. 根の指数である2番目の子要素(数字3)が, 1番目の子要素(平方根)に適用されます. また, これらの要素は, mrootの指数のフォントサイズのみ変更しますが, 指数は, 分数の分子や分母より小さく縮小されることに注意して下さい.

The following example contains a square root written with msqrt and a cube root written with mroot. Note that msqrt has several children and the square root applies to all of them. mroot has exactly two children: it is a root of index the second child (the number 3), applied to the first child (the square root). Also note these elements only change the font-size within the mroot index, but it is scaled down more than within the numerator and denumerator of the fraction.

<math>
  <mroot>
    <msqrt>
      <mfrac>
        <mn>1</mn>
        <mn>2</mn>
      </mfrac>
      <mo>+</mo>
      <mn>4</mn>
    </msqrt>
    <mn>3</mn>
  </mroot>
  <mo>+</mo>
  <mn>0</mn>
</math>
msqrt-mroot example

<msqrt>要素と<mroot>要素は, math-shiftcompactに設定します. <mroot>要素は, scriptlevelを2つ増加させるように設定し, 最初の子要素以外の全ての displaystyleを"false"に設定します. ユーザーエージェントのスタイルシートは, この挙動を実装するために, 次の決まりを含まなければなりません.

The <msqrt> and <mroot> elements sets math-shift to compact. The <mroot> element increments scriptlevel by 2, and sets displaystyle to "false" in all but its first child. The user agent stylesheet must contain the following rule in order to implement that behavior:

mroot > :not(:first-child) {
  math-depth: add(2);
  math-style: compact;
}
mroot, msqrt {
  math-shift: compact;
}

<msqrt>要素または<mroot>要素が, block mathまたはinline mathに等しいdisplayプロパティの算出値を持たないならば, その要素は, 指定されたプロパティに対応する値について述べているCSS仕様書によって配置されます. そうでなければ, 後で述べる配置が行われます.

If the <msqrt> or <mroot> element do not have their computed display property equal to block math or inline math then they are laid out according to the CSS specification where the corresponding value is described. Otherwise, the layout below is performed.

<mroot>要素が, 2つより少ないか多いフロー内子要素を持っている場合, 配置アルゴリズムは, mrow要素と同じです. そうでない場合, 最初のフロー内要素はmrootの基となる式と呼ばれ, 2番目のフロー内子要素はmrootの指数と呼ばれ, 配置アルゴリズムは後で説明されているとおりです.

If the <mroot> has less or more than two in-flow children, its layout algorithm is the same as the mrow element. Otherwise, the first in-flow child is called mroot base and the second in-flow child is called mroot index and its layout algorithm is explained below.

注意
Note
実際のところ, <mroot>要素は, 2つのフロー内子要素を持ちます. したがって, CSSの決まりは, 基本的にscriptleveldisplaystyleを指数に対して変更するよう働きます.
In practice, an <mroot> element has two children that are in-flow. Hence the CSS rules basically perform scriptlevel and displaystyle changes for the index.

<msqrt>要素は, msqrtの基となる式と呼ばれる名前無し<mrow>ボックスを生成します.

The <msqrt> element generates an anonymous <mrow> box called the msqrt base.

3.3.3.1 根号
Radical symbol

根号は, <msqrt>要素または<mroot>要素のvisibilityvisibleの場合のみ描画されなければなりません. その場合, 根号は, 要素のcolorで描画されなければなりません.

The radical symbol must only be painted if the visibility of the <msqrt> or <mroot> element is visible. In that case, the radical symbol must be painted with the color of that element.

根号の字形は文字 U+221A 平方根に対して得られる字形です.

The radical glyph is the glyph obtained for the character U+221A SQUARE ROOT.

根号の離隔は, math-stylecompactならRadicalVerticalGapで, math-stylenormalならRadicalDisplayStyleVerticalGapで与えられます.

The radical gap is given by RadicalVerticalGap if the math-style is compact and RadicalDisplayStyleVerticalGap if the math-style is normal.

伸長された根号の字形に対する目標となる大きさは, RadicalRuleThickness, 根号の離隔, 基となる式の字面の高さの合計です.

The radical target size for the stretchy radical glyph is the sum of RadicalRuleThickness, radical gap and the ink height of the base.

根号の字形に対するボックスの尺度根の描画は, 根号の字形に対する目標の大きさであるブロック次元伸長された字形を形作るアルゴリズムによって与えられます.

The box metrics of the radical glyph and painting of the surd are given by the algorithm to shape a stretchy glyph to block dimension the target size for the radical glyph.

3.3.3.2 平方根
Square root

<msqrt>要素は, 14で示されたように配置されます.

The <msqrt> element is laid out as shown on Figure 14.

14 <msqrt>要素に対するボックスモデル
Figure 14 Box model for the <msqrt> element

平方根の数学コンテンツの最小内容行内サイズ(または最大内容行内サイズ)は, 根号の字形に対するブロック軸に沿って伸長された字形の望ましい行内サイズと, msqrtの基となる式マージンボックス最小内容行内サイズ(または最大内容行内サイズ)との合計です.

The min-content inline size (respectively max-content inline size) of the math content is the sum of the preferred inline size of a glyph stretched along the block axis for the radical glyph and of the min-content inline size (respectively max-content inline size) of the msqrt base's margin box.

平方根の数学コンテンツの行内サイズは, 根号の字形に対するボックスの尺度における前側の幅と, msqrtの基となる式のマージンボックスの行内サイズとの合計です.

The inline size of the math content is the sum of the advance width of the box metrics of the radical glyph and of the inline size of the msqrt base's margin's box.

平方根の数学コンテンツの行アセントは, 次の中で最大のものです.

The line-ascent of the math content is the maximum between:

平方根の数学コンテンツの行ディセントは, 次の中で最大のものです.

The line-descent of the math content is the maximum between:

上側の線の行内サイズは, 基となる式のマージンボックスの行内サイズです. msqrtの基となる式と上側の線の行内移動距離は同じで, 根号の字形に対するボックスの尺度の幅にも等しいです.

The inline size of the overbar is the inline size of the msqrt base's margin's box. The inline offsets of the msqrt base and overbar are also the same and equal to the width of the box metrics of the radical glyph.

msqrtの基となる式欧文ベースラインは, 全体の欧文ベースラインに揃えられます. 上側の線のブロックサイズは, RadicalRuleThicknessです. その線の鉛直方向の中心は, 欧文ベースラインから行上面の方へ, 平方根の数学コンテンツの行アセントからRadicalExtraAscenderRadicalRuleThicknessの半分を引いた距離の分ずらされます.

The alphabetic baseline of the msqrt base is aligned with the alphabetic baseline. The block size of the overbar is RadicalRuleThickness. Its vertical center is shifted away from the alphabetic baseline by a distance towards the line-over equal to the line-ascent of the math content, minus the RadicalExtraAscender, minus half the RadicalRuleThickness.

最終的に, 次のように根の描画が行われます.

Finally, the painting of the surd is performed:

3.3.3.3 指数付きの根
Root with index

<mroot>要素は, 15で示されたように配置されます. 最初, mrootの指数は無視され, mrootの基となる式と根号の字形が, (緑で示された)マージンボックスBを生成するために, § 3.3.3.2 平方根と同じアルゴリズムを用いて14で示されたように配置されます.

The <mroot> element is laid out as shown on Figure 15. The mroot index is first ignored and the mroot base and radical glyph are laid out as shown on figure Figure 14 using the same algorithm as in 3.3.3.2 Square root in order to produce a margin box B (represented in green).

15 <mroot>要素に対するボックスモデル
Figure 15 Box model for the <mroot> element

指数付きの根の数学コンテンツの最小内容行内サイズ(または最大内容行内サイズ)は, max(0, RadicalKernBeforeDegree), mrootの指数マージンボックスにおけるmrootの指数最小内容行内サイズ(または最大内容行内サイズ), max( − Bの最小内容行内サイズ, RadicalKernAfterDegree)(またはmax( − Bの最大内容行内サイズ, RadicalKernAfterDegree)), Bの最小内容行内サイズ(または最大内容行内サイズ)の合計です.

The min-content inline size (respectively max-content inline size) of the math content is the sum of max(0, RadicalKernBeforeDegree), the mroot index's min-content inline size (respectively max-content inline size) of the mroot index's margin box, max(−min-content inline size, RadicalKernAfterDegree) (respectively max(−max-content inline size, RadicalKernAfterDegree)) and of the min-content inline size (respectively max-content inline size) of B.

同じ表し方を使うならば, 調整済RadicalKernBeforeDegree調整済RadicalKernAfterDegreeは, それぞれmax(0, RadicalKernBeforeDegree)とmax( − 指数のマージンボックス行内サイズ, RadicalKernAfterDegree)です.

Using the same clamping, AdjustedRadicalKernBeforeDegree and AdjustedRadicalKernAfterDegree are respectively defined as max(0, RadicalKernBeforeDegree) and is max(−inline size of the index's margin box, RadicalKernAfterDegree).

指数付きの根の数学コンテンツの行内サイズは, 調整済RadicalKernBeforeDegree, 指数のマージンボックス行内サイズ, 調整済RadicalKernAfterDegree, Bの行内サイズの合計です.

The inline size of the math content is the sum of AdjustedRadicalKernBeforeDegree, the inline size of the index's margin box, AdjustedRadicalKernAfterDegree and of the inline size of B.

指数付きの根の数学コンテンツの行アセントは, 次の中で最大のものです.

The line-ascent of the math content is the maximum between:

指数付きの根の数学コンテンツの行ディセントは, 次の中で最大のものです.

The line-descent of the math content is the maximum between:

指数の行内移動距離は, 調整済RadicalKernBeforeDegreeです. mrootの基となる式の行内移動距離は, 同じもの + 指数のマージンボックス行内サイズです.

The inline offset of the index is AdjustedRadicalKernBeforeDegree. The inline-offset of the mroot base is the same + the inline size of the index's margin box.

Bの欧文ベースラインは, 全体の欧文ベースラインに揃えられます. 指数の欧文ベースラインは, 行下面の境界から, RadicalDegreeBottomRaisePercent × Bのブロックサイズ + 指数のマージンボックス行ディセントの距離の分ずらされます.

The alphabetic baseline of B is aligned with the alphabetic baseline. The alphabetic baseline of the index is shifted away from the line-under edge by a distance of RadicalDegreeBottomRaisePercent × the block size of B + the line-descent of the index's margin box.

注意
Note
一般に, 根の指数における前方カーニングは正である一方, 後方カーニングは負です. このことは, 根の要素は行内始端に間隔を持ち, 根の指数は根本体に重なるであろうことを意味します.
In general, the kerning before the root index is positive while the kerning after it is negative, which means that the root element will have some inline-start space and that the root index will overlap the surd.

3.3.4 書式の変更 <mstyle>
Style Change <mstyle>

歴史的に, mstyle要素は, その中身の描画に影響を与える書式の変更を行うために導入されました.

Historically, the mstyle element was introduced to make style changes that affect the rendering of its contents.

<mstyle>要素は, § 2.1.3 共通の属性で述べられている属性を持ちます. この要素の配置アルゴリズムは, mrow要素のものと同じです.

The <mstyle> element accepts the attributes described in 2.1.3 Global Attributes. Its layout algorithm is the same as the mrow element.

注意
Note
<mstyle>は完全なMathMLとの互換性のための実装です. MathMLコアのみを対象とする著者は, 書式にCSSを利用することが推奨されます.
<mstyle> is implemented for compatibility with full MathML. Authors whose only target is MathML Core are encouraged to use CSS for styling.

次の例において, mstyleは, scriptleveldisplaystyleを設定するのに使用されています. この設定は, その子孫要素のフォントサイズと添え字の位置に個別に影響していることに注意して下さい. MathMLコアにおいては, 代わりに単にmrow要素を使用すればよいです.

In the following example, mstyle is used to set the scriptlevel and displaystyle. Observe this is respectively affecting the font-size and placement of subscripts of their descendants. In MathML Core, one could just have used mrow elements instead.

<math>
  <munder>
    <mo movablelimits="true">*</mo>
    <mi>A</mi>
  </munder>
  <mstyle scriptlevel="1">
    <mstyle displaystyle="true">
      <munder>
        <mo movablelimits="true">*</mo>
        <mi>B</mi>
      </munder>
      <munder>
        <mo movablelimits="true">*</mo>
        <mi>C</mi>
      </munder>
    </mstyle>
    <munder>
      <mo movablelimits="true">*</mo>
      <mi>D</mi>
    </munder>
  </mstyle>
</math>
mstyle example

3.3.5 エラーメッセージ <merror>
Error Message <merror>

merror要素は, その中身を”エラーメッセージ”として表示します. この要素の意図は, 他の形式の入力からMathMLを生成するプログラムに, 入力の構文エラーを報告する標準の方法を提供することです.

The merror element displays its contents as an ”error message”. The intent of this element is to provide a standard way for programs that generate MathML from other input to report syntax errors in their input.

次の例において,merrorは, 何らかのLaTeXのような入力に対する構文解析エラーを示すために使用されています.

In the following example, merror is used to indicate a parsing error for some LaTeX-like input:

<math>
  <mfrac>
    <merror>
      <mtext>Syntax error: \frac{1}</mtext>
    </merror>
    <mn>3</mn>
  </mfrac>
</math>
merror example

<merror>要素は, § 2.1.3 共通の属性で述べられている属性を持ちます. この要素の配置アルゴリズムは, mrow要素のものと同じです. ユーザーエージェントのスタイルシートは, エラーメッセージを視覚的に強調するために, 次の決まりを含まなければなりません.

The <merror> element accepts the attributes described in 2.1.3 Global Attributes. Its layout algorithm is the same as the mrow element. The user agent stylesheet must contain the following rule in order to visually highlight the error message:

merror {
  border: 1px solid red;
  background-color: lightYellow;
}

3.3.6 周囲の余白を調整する <mpadded>
Adjust Space Around Content <mpadded>

mpadded要素は, そのフロー内子要素の中身と同じものを, ただし, <mpadded>の属性に従ってその中身の大きさと相対的な位置を修正して描画します.

The mpadded element renders the same as its in-flow child content, but with the size and relative positioning point of its content modified according to <mpadded>’s attributes.

<mpadded>要素は, § 2.1.3 共通の属性で述べられている属性と, 次の属性を持ちます.

The <mpadded> element accepts the attributes described in 2.1.3 Global Attributes as well as the following attributes:

width, height, depth, lspace, voffsetは, もし存在するなら, 有効な<length-percentage>(訳注:長さや百分率)である値を持たなければなりません.

The width, height, depth, lspace and voffset if present, must have a value that is a valid <length-percentage>.

次の例において, mpaddedは, 分数の周りの間隔を調整するために使用されています(青い背景は, その範囲を視覚化するのに使用されています). 属性無しでは, この要素はmrowのようにふるまいますが, その属性は, ボックスの大きさ(幅, 高さ, 深さ)やボックスの中での分数の位置(左側の間隔, 鉛直移動距離)を指定することができます.

In the following example, mpadded is used to tweak spacing around a fraction (a blue background is used to visualize it). Without attributes, it behaves like an mrow but the attributes allow to specify the size of the box (width, height, depth) and position of the fraction within that box (lspace and voffset).

<math>
  <mrow>
    <mn>1</mn>
    <mpadded style="background: lightblue;">
      <mfrac>
        <mn>23456</mn>
        <mn>78</mn>
      </mfrac>
    </mpadded>
    <mn>9</mn>
  </mrow>
  <mo>+</mo>
  <mrow>
    <mn>1</mn>
    <mpadded lspace="2em" voffset="-1em" height="1em" depth="3em" width="7em"
             style="background: lightblue;">
      <mfrac>
        <mn>23456</mn>
        <mn>78</mn>
      </mfrac>
    </mpadded>
    <mn>9</mn>
  </mrow>
</math>
mpadded example
3.3.6.1 内部ボックスと所要のパラメータ
Inner box and requested parameters

mpadded要素は, 内部行内サイズ, 内部行アセント, 内部行ディセントと呼ばれるパラメータを持つ, mpaddedの内部ボックスと呼ばれる名前無し<mrow>ボックスを生成します.

The mpadded element generates an anonymous <mrow> box called the mpadded inner box with parameters called inner inline size, inner line-ascent and inner line-descent.

所要の<mpadded>のパラメータは, 次のように決められます.

The requested <mpadded> parameters are determined as follows:

  • 所要の幅は, widthプロパティの解決値です. width属性が存在し, 百分率でない有効な値の場合, その属性は, 要素のwidthプロパティをその属性値に対応する値に設定する表現の助言として使用されます.
    The requested width is the resolved value of the width property. If the width attribute is present, valid and not a percentage then that attribute is used as a presentational hint setting the element's width property to the corresponding value.
  • height属性が存在しないか, 無効な値か百分率の場合, 所要の高さは, 内部行アセントです. そうでない場合, 所要の高さは, 負の値を0に固定した, height属性の解決値です.
    If the height attribute is absent, invalid or a percentage then the requested height is the inner line-ascent. Otherwise the requested height is the resolved value of the height attribute, clamping negative values to 0.
  • depth属性が存在しないか, 無効な値か百分率の場合, 所要の深さは, 内部行アセントです. そうでない場合 所要の深さは, 負の値を0に固定した, depth属性の解決値です.
    If the depth attribute is absent, invalid or a percentage then the requested depth is the inner line-ascent. Otherwise the requested depth is the resolved value of the depth attribute, clamping negative values to 0.
  • lspace属性が存在しないか, 無効な値か百分率の場合, 所要の左側の間隔は0です. そうでない場合, 所要の左側の間隔は, 負の値を0に固定したlspace属性の解決値です.
    If the lspace attribute is absent, invalid or a percentage then the requested lspace is 0. Otherwise the requested lspace is the resolved value of the lspace attribute, clamping negative values to 0.
  • voffset属性が存在しないか, 無効な値か百分率の場合, 所要の鉛直移動距離は0です. そうでない場合, 所要の鉛直移動距離は, voffset属性の解決値です.
    If the voffset attribute is absent, invalid or a percentage then the requested voffset is 0. Otherwise the requested voffset is the resolved value of the voffset attribute.
    注意
    Note
    負のvoffsetの値は, 0に固定されません.
    Negative voffset values are not clamped to 0.
3.3.6.2 <mpadded>の配置
Layout of <mpadded>

<mpadded>要素が, block mathまたはinline mathに等しいdisplayプロパティの算出値を持たないならば, その要素は, 指定されたプロパティに対応する値について述べているCSS仕様書によって配置されます. そうでなければ, 16に示されたように配置されます.

If the <mpadded> element does not have its computed display property equal to block math or inline math then it is laid out according to the CSS specification where the corresponding value is described. Otherwise, it is laid out as shown on Figure 16.

16 <mpadded>要素に対するボックスモデル
Figure 16 Box model for the <mpadded> element

要素の数学コンテンツの最小内容行内サイズ(または最大内容行内サイズ)は, 3.3.6.1 内部ボックスと所要のパラメータで計算された所要の幅ですが, mpaddedの内部ボックス最小内容行内サイズ(または最大内容行内サイズ)を "内部行内サイズ"の代わりに用いて計算されます.

The min-content inline size (respectively max-content inline size) of the math content is the requested width calculated in 3.3.6.1 Inner box and requested parameters but using the min-content inline size (respectively max-content inline size) of the mpadded inner box instead of the "inner inline size".

要素の数学コンテンツの行内サイズは, 3.3.6.1 内部ボックスと所要のパラメータで計算された所要の幅です.

The inline size of the math content is the requested width calculated in 3.3.6.1 Inner box and requested parameters.

要素の数学コンテンツの行アセントは, 所要の高さです. 数学コンテンツの行ディセントは, 所要の深さです.

The line-ascent of the math content is the requested height. The line-descent of the math content is the requested depth.

mpaddedの内部ボックスは, その欧文ベースラインが, 全体の欧文ベースラインから所要の鉛直移動距離の分, 行上面の方へずらされるように配置されます.

The mpadded inner box is placed so that its alphabetic baseline is shifted away from the alphabetic baseline by the requested voffset towards the line-over.

3.3.7 見えない式をつくる <mphantom>
Making Sub-Expressions Invisible <mphantom>

歴史的に, mphantom要素は, その中身を見えないように, ただし, その中身が通常通り描画された場合と同じように, 欧文ベースラインの位置も含めて同じ尺度や次元で描画するために導入されました.

Historically, the mphantom element was introduced to render its content invisibly, but with the same metrics size and other dimensions, including alphabetic baseline position that its contents would have if they were rendered normally.

次の例において, mphantomは, 分数の分子と分母の対応する部分を揃えることを確かなものにするために使用されています.

In the following example, mphantom is used to ensure alignment of corresponding parts of the numerator and denominator of a fraction:

<math>
  <mfrac>
    <mrow>
      <mi>x</mi>
      <mo>+</mo>
      <mi>y</mi>
      <mo>+</mo>
      <mi>z</mi>
    </mrow>
    <mrow>
      <mi>x</mi>
      <mphantom>
        <mo form="infix">+</mo>
        <mi>y</mi>
      </mphantom>
      <mo>+</mo>
      <mi>z</mi>
    </mrow>
  </mfrac>
</math>
mphantom example

<mphantom>要素は, 2.1.3 共通の属性で述べられている属性を持ちます. この要素の配置アルゴリズムは, mrow要素のものと同じです. ユーザーエージェントのスタイルシートは, 要素の中身を隠すために, 次の決まりを含まなければなりません.

The <mphantom> element accepts the attributes described in 2.1.3 Global Attributes. Its layout algorithm is the same as the mrow element. The user agent stylesheet must contain the following rule in order to hide the content:

mphantom {
  visibility: hidden;
}
注意
Note
<mphantom>は完全なMathMLとの互換性のための実装です. MathMLコアのみを対象とする著者は, 書式にCSSを利用することが推奨されます.
<mphantom> is implemented for compatibility with full MathML. Authors whose only target is MathML Core are encouraged to use CSS for styling.

3.4 添え字の配置要素
Script and Limit Schemata

この節で説明する要素は, 基となる式の周りで1つ以上の添え字の位置を定めます. 様々な種類の添え字や装飾を記号に付け加えることは, 数学ではとても一般的な表記方法です. 純粋な視覚的な配置においては, 与えられた基となる式の周りに何らかの伝統的な添え字を配置する場合, 単独の一般的な目的の要素で添え字や装飾の位置を十分に定められます. しかしながら, 一般的な表記の抽象的な構造をより良く表現するために, MathMLは様々なより特別な添え字の要素を提供しています.

The elements described in this section position one or more scripts around a base. Attaching various kinds of scripts and embellishments to symbols is a very common notational device in mathematics. For purely visual layout, a single general-purpose element could suffice for positioning scripts and embellishments in any of the traditional script locations around a given base. However, in order to capture the abstract structure of common notation better, MathML provides several more specialized scripting elements.

下付きや上付きの添え字の要素に加えて, MathMLは, 基となる式の上や下に添え字を配置する上側の添え字や下側の添え字の要素を持っています. これらの要素は大きな演算子に添え字を配置したり, 元の式の上や下にアクセントや線を配置するのに利用できます.

In addition to sub-/superscript elements, MathML has overscript and underscript elements that place scripts above and below the base. These elements can be used to place limits on large operators, or for placing accents and lines above or below the base.

3.4.1 下付きや上付きの添え字 <msub>, <msup>, <msubsup>
Subscripts and Superscripts <msub>, <msup>, <msubsup>

msub要素, msup要素, msubsup要素は, MathMLの式に下付き添え字や上付き添え字を付け加えるのに使用されます. これらの要素は, 2.1.3 共通の属性で述べられている属性を持ちます.

The msub, msup and msubsup elements are used to attach subscript and superscript to a MathML expression. They accept the attributes described in 2.1.3 Global Attributes.

次の例は, 下付き添え字や上付き添え字の基本的な使い方を示しています. フォントサイズは, 添え字では自動的に縮小されます.

The following example shows basic use of subscripts and superscripts. The font-size is automatically scaled down within the scripts.

<math>
  <msub>
    <mn>1</mn>
    <mn>2</mn>
  </msub>
  <mo>+</mo>
  <msup>
    <mn>3</mn>
    <mn>4</mn>
  </msup>
  <mo>+</mo>
  <msubsup>
    <mn>5</mn>
    <mn>6</mn>
    <mn>7</mn>
  </msubsup>
</math>
msub-msup-msubsup example

<msub>要素, <msup>要素, <msubsup>要素が, block mathまたはinline mathに等しいdisplayプロパティの算出値を持たないならば, その要素は, 指定されたプロパティに対応する値について述べているCSS仕様書によって配置されます. そうでなければ, 後で述べる配置が行われます.

If the <msub>, <msup> or <msubsup> elements do not have their computed display property equal to block math or inline math then they are laid out according to the CSS specification where the corresponding value is described. Otherwise, the layout below is performed.

3.4.1.1 <msub>, <msup>, <msubsup>の子要素
Children of <msub>, <msup>, <msubsup>

<msub>要素が, 2つより少ないか多いフロー内子要素を持っている場合, 配置アルゴリズムは, mrow要素と同じです. そうでない場合, 最初のフロー内子要素はmsubの基となる式, 2番目のフロー内子要素はmsubの下付き添え字と呼ばれ, 配置アルゴリズムは3.4.1.2 下付き添え字と式で説明されているとおりです.

If the <msub> element has less or more than two in-flow children, its layout algorithm is the same as the mrow element. Otherwise, the first in-flow child is called the msub base, the second in-flow child is called the msub subscript and the layout algorithm is explained in 3.4.1.2 Base with subscript.

<msup>要素が, 2つより少ないか多い フロー内子要素を持っている場合, 配置アルゴリズムは, mrow要素と同じです. そうでない場合, 最初のフロー内子要素はmsupの基となる式, 2番目のフロー内子要素はmsupの上付き添え字と呼ばれ, 配置アルゴリズムは3.4.1.3 上付き添え字と式で説明されているとおりです.

If the <msup> element has less or more than two in-flow children, its layout algorithm is the same as the mrow element. Otherwise, the first in-flow child is called the msup base, the second in-flow child is called the msup superscript and the layout algorithm is explained in 3.4.1.3 Base with superscript.

<msubsup>要素が, 3つより少ないか多いフロー内子要素を持っている場合, 配置アルゴリズムは, mrow要素と同じです. そうでない場合, 最初のフロー内子要素はmsubsupの基となる式, 2番目のフロー内子要素はmsubsupの下付き添え字, 3番目のフロー内子要素はmsubsupの上付き添え字と呼ばれ, 配置アルゴリズムは3.4.1.4 上付き・下付き添え字と式で説明されているとおりです.

If the <msubsup> element has less or more than three in-flow children, its layout algorithm is the same as the mrow element. Otherwise, the first in-flow child is called the msubsup base, the second in-flow child is called the msubsup subscript, its third in-flow child is called the msubsup superscript and the layout algorithm is explained in 3.4.1.4 Base with subscript and superscript.

3.4.1.2 下付き添え字と式
Base with subscript

<msub>要素は, 17で示されたように配置されます. 大きな演算子のイタリック補正は, msubの基となる式largeopプロパティを持つ修飾された演算子ならその式のイタリック補正, そうでなければ0です.

The <msub> element is laid out as shown on Figure 17. LargeOpItalicCorrection is the italic correction of the msub base if it is an embellished operator with the largeop property and 0 otherwise.

17 <msub>要素に対するボックスモデル
Figure 17 Box model for the <msub> element

添え字付きの式の数学コンテンツの最小内容行内サイズ(または最大内容行内サイズ)は, msubの基となる式マージンボックス最初内容行内サイズ(または最大内容行内サイズ) − 大きな演算子のイタリック補正 + msubの下付き添え字マージンボックス最小内容行内サイズ(または最大内容行内サイズ) + SpaceAfterScriptです.

The min-content inline size (respectively max-content inline size) of the math content is the min-content inline size (respectively max-content inline size) of the msub base's margin boxLargeOpItalicCorrection + min-content inline size (respectively max-content inline size) of the msub subscript's margin box + SpaceAfterScript.

行内伸長サイズ制限またはブロック伸長サイズ制限がある場合, msubの基となる式も同じサイズ制限を伴って配置され, そうでない場合, 何らサイズ制限無しで配置されます. 添え字は, いつでも何らサイズ制限無しに配置されます.

If there is an inline stretch size constraint or a block stretch size constraint then the msub base is also laid out with the same stretch size constraint and otherwise it is laid out without any stretch size constraint. The scripts are always laid out without any stretch size constraint.

添え字付きの式の数学コンテンツの行内サイズは, msubの基となる式マージンボックスの行内サイズ − 大きな演算子のイタリック補正 + msubの下付き添え字マージンボックス行内サイズ + SpaceAfterScriptです.

The inline size of the math content is the inline size of the msub base's margin boxLargeOpItalicCorrection + the inline size of the msub subscript's margin box + SpaceAfterScript.

下付き添え字移動距離は, 次の中で最大のものです.

SubShift is the maximum between:

添え字付きの式の数学コンテンツの行アセントは, 次の中で最大のものです.

The line-ascent of the math content is the maximum between:

添え字付きの式の数学コンテンツの行ディセントは, 次の中で最大のものです.

The line-descent of the math content is the maximum between:

msubの基となる式行内移動距離は0で, msubの下付き添え字行内移動距離は, msubの基となる式マージンボックス行内サイズ大きな演算子のイタリック補正です.

The inline offset of the msub base is 0 and the inline offset of the msub subscript is the inline size of the msub base's margin boxLargeOpItalicCorrection.

msubの基となる式は, その欧文ベースラインが全体の欧文ベースラインに一致するように配置されます. msubの下付き添え字は, その欧文ベースラインが, 全体の欧文ベースラインから下付き添え字移動距離の分, 行下面の方へずらされるように配置されます.

The msub base is placed so that its alphabetic baseline matches the alphabetic baseline. The msub subscript is placed so that its alphabetic baseline is shifted away from the alphabetic baseline by SubShift towards the line-under.

3.4.1.3 上付き添え字と式
Base with superscript

<msup>要素は, 18で示されたように配置されます. イタリック補正は, msupの基となる式largeopプロパティを持つ修飾された演算子でないならその式のイタリック補正, そうでなければ0です.

The <msup> element is laid out as shown on Figure 18. ItalicCorrection is the italic correction of the msup base if it is not an embellished operator with the largeop property and 0 otherwise.

18 <msup>要素に対するボックスモデル
Figure 18 Box model for the <msup> element

添え字付きの式の数学コンテンツの最小内容行内サイズ(または最大内容行内サイズ)は, msupの基となる式マージンボックス最小内容行内サイズ(または最大内容行内サイズ) + イタリック補正 + msupの上付き添え字マージンボックス最小内容行内サイズ(または最大内容行内サイズ) + SpaceAfterScriptです.

The min-content inline size (respectively max-content inline size) of the math content is the min-content inline size (respectively max-content inline size) of the msup base's margin box + ItalicCorrection + the min-content inline size (respectively max-content inline size) of the msup superscript's margin box + SpaceAfterScript.

行内伸長サイズ制限またはブロック伸長サイズ制限がある場合, msupの基となる式も同じサイズ制限を伴って配置され, そうでない場合, 何らサイズ制限無しで配置されます. 添え字は, いつでも何らサイズ制限無しに配置されます.

If there is an inline stretch size constraint or a block stretch size constraint then the msup base is also laid out with the same stretch size constraint and otherwise it is laid out without any stretch size constraint. The scripts are always laid out without any stretch size constraint.

添え字付きの式の数学コンテンツの行内サイズは, msupの基となる式マージンボックス行内サイズ + イタリック補正 + msupの上付き添え字マージンボックス行内サイズ + SpaceAfterScriptです.

The inline size of the math content is the inline size of the msup base's margin box + ItalicCorrection + the inline size of the msup superscript's margin box + SpaceAfterScript.

上付き添え字移動距離は, 次の中で最大のものです.

SuperShift is the maximum between:

添え字付きの式の数学コンテンツの行アセントは, 次の中で最大のものです.

The line-ascent of the math content is the maximum between:

添え字付きの式の数学コンテンツの行ディセントは, 次の中で最大のものです.

The line-descent of the math content is the maximum between:

msupの基となる式行内移動距離は0で, msupの下付き添え字行内移動距離は, msupの基となる式マージンボックス行内サイズ + イタリック補正です.

The inline offset of the msup base is 0 and the inline offset of msup superscript is the inline size of the msup base's margin box + ItalicCorrection.

msupの基となる式は, その欧文ベースラインが全体の欧文ベースラインに一致するように配置されます. msupの下付き添え字は, その欧文ベースラインが, 全体の欧文ベースラインから上付き添え字移動距離の分, 行上面の方へずらされるように配置されます.

The msup base is placed so that its alphabetic baseline matches the alphabetic baseline. The msup superscript is placed so that its alphabetic baseline is shifted away from the alphabetic baseline by SuperShift towards the line-over.

3.4.1.4 下付き・上付き添え字と式
Base with subscript and superscript

<msubsup>要素は, 18で示されたように配置されます. 大きな演算子のイタリック補正下付き添え字移動距離は, 3.4.1.2 下付き添え字と式と同じように設定されます. イタリック補正上付き添え字移動距離は, 3.4.1.3 上付き添え字と式と同じように設定されます.

The <msubsup> element is laid out as shown on Figure 18. LargeOpItalicCorrection and SubShift are set as in 3.4.1.2 Base with subscript. ItalicCorrection and SuperShift are set as in 3.4.1.3 Base with superscript.

19 <msubsup>要素に対するボックスモデル
Figure 19 Box model for the <msubsup> element

添え字付きの式の数学コンテンツの最小内容行内サイズ(または, 最大内容行内サイズ, 行内サイズ)は, 3.4.1.2 下付き添え字と式および3.4.1.3 上付き添え字と式で計算された数学コンテンツの最小内容サイズ(または, 最大内容サイズ, 行内サイズ)の中で最大のものです.

The min-content inline size (respectively max-content inline size and inline size) of the math content is the maximum between the min-content inline size (respectively max-content inline size and inline size) of the math content calculated in 3.4.1.2 Base with subscript and 3.4.1.3 Base with superscript.

行内伸長サイズ制限またはブロック伸長サイズ制限がある場合, msubsupの基となる式も同じサイズ制限を伴って配置され, そうでない場合, 何らサイズ制限無しで配置されます. 添え字は, いつでも何らサイズ制限無しに配置されます.

If there is an inline stretch size constraint or a block stretch size constraint then the msubsup base is also laid out with the same stretch size constraint and otherwise it is laid out without any stretch size constraint. The scripts are always laid out without any stretch size constraint.

行内伸長サイズ制限またはブロック伸長サイズ制限がある場合, msubsupの基となる式も同じサイズ制限を伴って配置され, そうでない場合, 何らサイズ制限無しで配置されます. 添え字は, いつでも何らサイズ制限無しに配置されます.

If there is an inline stretch size constraint or a block stretch size constraint then the msubsup base is also laid out with the same stretch size constraint and otherwise it is laid out without any stretch size constraint. The scripts are always laid out without any stretch size constraint.

下付き・上付き添え字離隔は, ブロック軸に沿った2つの添え字の離隔で, (下付き添え字移動距離msubsupの下付き添え字マージンボックス字面行アセント) + (上付き添え字移動距離msubsupの上付き添え字マージンボックス字面行ディセント)と定義されます. 下付き・上付き添え字離隔SubSuperscriptGapMinより小さい場合, この条件が有効であることが確かになるように, 次の工程が実行されます.

SubSuperGap is the gap between the two scripts along the block axis and is defined by (SubShift − the ink line-ascent of the msubsup subscript's margin box) + (SuperShift − the ink line-descent of the msubsup superscript's margin box). If SubSuperGap is not at least SubSuperscriptGapMin then the following steps are performed to ensure that the condition holds:

  1. ΔをSuperscriptBottomMaxWithSubscript − (上付き添え字移動距離msubsupの上付き添え字マージンボックス字面行ディセント)に設定します. Δ > 0なら, Δ, またはSubSuperscriptGapMin下付き・上付き添え字離隔の小さい方にΔを設定し, Δの分, 上付き添え字移動距離を(, また, 同じように下付き・上付き添え字離隔も)増加させます.
    Let Δ be SuperscriptBottomMaxWithSubscript − (SuperShift − the ink line-descent of the msubsup superscript's margin box). If Δ > 0 then set Δ to the minimum between Δ set SubSuperscriptGapMinSubSuperGap and increase SuperShift (and so SubSuperGap too) by Δ.
  2. ΔをSubSuperscriptGapMin下付き・上付き添え字離隔に設定します. Δ > 0なら, Δの分, 下付き添え字移動距離を(, また, 同じように下付き・上付き添え字離隔も)増加させます.
    Let Δ be SubSuperscriptGapMinSubSuperGap. If Δ > 0 then increase SubscriptShift (and so SubSuperGap too) by Δ.

添え字付きの式の数学コンテンツの字面行アセント(または, 行アセント, 字面行ディセント, 行ディセント)は, 3.4.1.2 下付き添え字と式および3.4.1.3 上付き添え字と式で計算された, ただし, 上記で調整された下付き添え字移動距離上付き添え字移動距離を用いて計算された数学コンテンツの, 字面行アセント(または, 行アセント, 字面行ディセント, 行ディセント)の中で最大のものです.

The ink line-ascent (respectively line-ascent, ink line-descent, line-descent) of the math content is set to the maximum of the ink line-ascent (respectively line-ascent, ink line-descent, line-descent) of the math content calculated in 3.4.1.2 Base with subscript and 3.4.1.3 Base with superscript but using the adjusted values SubShift and SuperShift above.

msubsupの基となる式と添え字の行内移動距離ブロック移動距離は, 3.4.1.2 下付き添え字と式および3.4.1.3 上付き添え字と式で述べられているのと同じように計算されます.

The inline offset and block offset of the msubsup base and scripts are performed the same as described in 3.4.1.2 Base with subscript and 3.4.1.3 Base with superscript.

注意
Note

msubsupの下付き添え字(または, msubsupの上付き添え字)が空のボックスだとしても, 下付き・上付き離隔における追加の制限のために, <msubsup>は, 一般に, 3.4.1.3 上付き添え字と式(または, 3.4.1.2 下付き添え字と式)と同じように描画されることはありません. さらに, 空のmsubsupの下付き添え字(または, msubsupの上付き添え字)を配置することは, 全体の大きさを変更することにもなるかもしれません.

Even when the msubsup subscript (respectively msubsup superscript) is an empty box, <msubsup> does not generally render the same as 3.4.1.3 Base with superscript (respectively 3.4.1.2 Base with subscript) because of the additional constraint on SubSuperGap. Moreover, positioning the empty msubsup subscript (respectively msubsup superscript) may also change the total size.

アルゴリズムを単純に保つために, 空の添え字を特別な方法で取り扱う試みは, 何ら行われていません.

In order to keep the algorithm simple, no attempt is made to handle empty scripts in a special way.

3.4.2 下側や上側の添え字 <munder>, <mover>, <munderover>
Underscripts and Overscripts <munder>, <mover>, <munderover>

munder要素, mover要素, munderover要素は, MathMLの式の下側や上側に配置されるアクセントや極限を付け加えるのに使用されます.

The munder, mover and munderover elements are used to attach accents or limits placed under or over a MathML expression.

<munderover>要素は, 2.1.3 共通の属性で述べられている属性と次の属性を持ちます.

The <munderover> element accepts the attribute described in 2.1.3 Global Attributes as well as the following attributes:

同様に, <mover>要素(または, <munder>要素)は, 2.1.3 共通の属性で述べられている属性とaccent属性(または, accentunder属性)を持ちます.

Similarly, the <mover> element (respectively <munder> element) accepts the attribute described in 2.1.3 Global Attributes as well as the accent attribute (respectively the accentunder attribute).

accent属性, accentunder属性は, もし存在するなら, ブール値である値を持たなければなりません. それらの値が省略されたか無効な値である場合, falseに等しいものとして扱われます. ユーザーエージェントは, 3.4.4 添え字におけるdisplaystyle, scriptlevel, math-shiftで述べられているように実装しなければなりません.

accent, accentunder attributes, if present, must have values that are booleans. If these attributes are absent or invalid, they are treated as equal to false. User agents must implement them as described in 3.4.4 Displaystyle, scriptlevel and math-shift in scripts.

次の例は, 下側や上側の添え字の基本的な使用方法を示しています. フォントサイズは, 添え字がアクセントを意味しない限り, 自動的に縮小されます.

The following example shows basic use of under- and overscripts. The font-size is automatically scaled down within the scripts, unless they are meant to be accents.

<math>
  <munder>
    <mn>1</mn>
    <mn>2</mn>
  </munder>
  <mo>+</mo>
  <mover>
    <mn>3</mn>
    <mn>4</mn>
  </mover>
  <mo>+</mo>
  <munderover>
    <mn>5</mn>
    <mn>6</mn>
    <mn>7</mn>
  </munderover>
  <mo>+</mo>
  <munderover accent="true">
    <mn>8</mn>
    <mn>9</mn>
    <mn>10</mn>
  </munderover>
  <mo>+</mo>
  <munderover accentunder="true">
    <mn>11</mn>
    <mn>12</mn>
    <mn>13</mn>
  </munderover>
</math>
munder-over-munderover example

<munder>要素, <mover>要素, <munderover>要素が, block mathまたはinline mathに等しいdisplayプロパティの算出値を持たないならば, その要素は, 指定されたプロパティに対応する値について述べているCSS仕様書によって配置されます. そうでなければ, 後で述べる配置が行われます.

If the <munder>, <mover> or <munderover> elements do not have their computed display property equal to block math or inline math then they are laid out according to the CSS specification where the corresponding value is described. Otherwise, the layout below is performed.

3.4.2.1 <munder>, <mover>, <munderover>の子要素
Children of <munder>, <mover>, <munderover>

<munder>要素が, 2つより少ないか多いフロー内子要素を持っている場合, 配置アルゴリズムは, mrow要素と同じです. そうでない場合, 最初のフロー内子要素はmunderの基となる式, 2番目のフロー内子要素はmunderの下側添え字と呼ばれます.

If the <munder> element has less or more than two in-flow children, its layout algorithm is the same as the mrow element. Otherwise, the first in-flow child is called the munder base and the second in-flow child is called the munder underscript.

<mover>要素が, 2つより少ないか多いフロー内子要素を持っている場合, 配置アルゴリズムは, mrow要素と同じです. そうでない場合, 最初のフロー内子要素はmoverの基となる式, 2番目のフロー内子要素はmoverの上側添え字と呼ばれます.

If the <mover> element has less or more than two in-flow children, its layout algorithm is the same as the mrow element. Otherwise, the first in-flow child is called the mover base and the second in-flow child is called the mover overscript.

<munderover>要素が, 3つより少ないか多いフロー内子要素を持っている場合, 配置アルゴリズムは, mrow要素と同じです. そうでない場合, 最初のフロー内子要素はmunderoverの基となる式, 2番目のフロー内子要素はmunderoverの下側添え字, 3番目のフロー内子要素はmunderoverの上側添え字と呼ばれます.

If the <munderover> element has less or more than three in-flow children, its layout algorithm is the same as the mrow element. Otherwise, the first in-flow child is called the munderover base, the second in-flow child is called the munderover underscript and its third in-flow child is called the munderover overscript.

<munder>要素, <mover>要素, <munderover>要素が, compactに等しいmath-styleプロパティの算出値を持っていて, movablelimitsプロパティを持つ装飾された演算子なら, それらの配置アルゴリズムは, 3.4.1.2 下付き添え字と式, 3.4.1.3 上付き添え字と式, 3.4.1.4 下付き・上付き添え字と式<msub>, <msup>, <msubsup>について述べた, それぞれのアルゴリズムと同じです.

If the <munder>, <mover> or <munderover> elements have a computed math-style property equal to compact and their base is an embellished operator with the movablelimits property, then their layout algorithms are respectively the same as the ones described for <msub>, <msup> and <msubsup> in 3.4.1.2 Base with subscript, 3.4.1.3 Base with superscript and 3.4.1.4 Base with subscript and superscript.

そうでない場合の<munder>, <mover>, <munderover>の配置アルゴリズムは, 3.4.2.3 下側添え字と式, 3.4.2.4 上側添え字と式, 3.4.2.5 下側・上側添え字と式でそれぞれ説明しています.

Otherwise, the <munder>, <mover> and <munderover> layout algorithms are respectively described in 3.4.2.3 Base with underscript, 3.4.2.4 Base with overscript and 3.4.2.5 Base with underscript and overscript.

3.4.2.2 行内軸に沿って演算子を伸長するアルゴリズム
Algorithm for stretching operators along the inline axis

行内軸に沿って演算子を伸長するアルゴリズムは次のとおりです.

The algorithm for stretching operators along the inline axis is as follows.

  1. 行内伸長サイズ制限またはブロック伸長サイズ制限があるなら, 配置される要素は, 装飾された演算子です. 基となる式を同じ伸長サイズ制限を伴って配置します.
    If there is an inline stretch size constraint or block stretch size constraint then the element being laid out is an embellished operator. Lay out the base with the same stretch size constraint.
  2. まだ配置されていないフロー内子要素の一覧を, stretchyプロパティと行内伸長軸を持つ装飾された演算子を含む最初の一覧LToStretchと2番目の一覧LNotToStretchに分割します.
    Split the list of in-flow children that have not been laid out yet into a first list LToStretch containing embellished operators with a stretchy property and inline stretch axis; and a second list LNotToStretch.
  3. LNotToStretchの全ての部分について, 何ら伸長サイズ制限無しに配置を実施します. もし, LToStretchが空なら停止します. LNotToStretchが空なら, LToStretchの全ての部分において, 伸長サイズ制限を0として配置を実施します.
    Perform layout without any stretch size constraint on all the items of LNotToStretch. If LToStretch is empty then stop. If LNotToStretch is empty, perform layout with stretch size constraint 0 on all the items of LToStretch.
  4. 目標のサイズTを, 前の工程で配置された子要素ボックスのマージンボックス行内サイズの最大値に設定します.
    Calculate the target size T to the maximum inline size of the margin boxes of child boxes that have been laid out in the previous step.
  5. LToStretchの全ての要素を行内伸長サイズ制限 Tを伴って配置または再配置します.
    Lay out or relayout all the elements of LToStretch with inline stretch size constraint T.
3.4.2.3 下側添え字と式
Base with underscript

<munder>要素は, 20で示されたように配置されます. 大きな演算子のイタリック補正は, munderの基となる式largeopプロパティを持つ修飾された演算子ならその式のイタリック補正, そうでなければ0です.

The <munder> element is laid out as shown on Figure 20. LargeOpItalicCorrection is the italic correction of the munder base if it is an embellished operator with the largeop property and 0 otherwise.

20 <munder>要素に対するボックスモデル
Figure 20 Box model for the <munder> element

添え字付きの式の数学コンテンツの最小内容行内サイズ(または, 最大内容行内サイズ)は, 後で述べる数学コンテンツの行内サイズと同じように, ただし, munderの基となる式マージンボックスmunderの下側添え字マージンボックスにおける行内サイズを, munderの基となる式マージンボックスmunderの下側添え字マージンボックスにおける最小内容行内サイズ(または, 最大内容行内サイズ)に置き換えて算出されます.

The min-content inline size (respectively max-content inline size) of the math content are calculated like the inline size of the math content below but replacing the inline sizes of the munder base's margin box and munder underscript's margin box with the min-content inline size (respectively max-content inline size) of the munder base's margin box and munder underscript's margin box.

フロー内子要素は, 行内軸に沿って演算子を伸長するアルゴリズムを使用して配置されます.

The in-flow children are laid out using the algorithm for stretching operators along the inline axis.

添え字付きの式の数学コンテンツの行内サイズは, 次の2つの数値の差の絶対値を求めることで算出されます.

The inline size of the math content is calculated by determining the absolute difference between:

mが上の2番目で算出された最小値とすると, munderの基となる式行内移動距離は, − m − 基となる式のマージンボックス行内サイズの半分です. munderの下側添え字行内移動距離は, − m − munderの下側添え字マージンボックス行内サイズの半分 − 大きな演算子のイタリック補正の半分です.

If m is the minimum calculated in the second item above then the inline offset of the munder base is −m − half the inline size of the base's margin box. The inline offset of the munder underscript is −m − half the inline size of the munder underscript's margin box − half LargeOpItalicCorrection.

下側添え字移動距離下側添え字追加ディセントのパラメータは, 次の順番で3つの状態を考慮して決められます.

Parameters UnderShift and UnderExtraDescender are determined by considering three cases in the following order:

  1. munderと基となる式が, largeopプロパティを持つ装飾された演算子の場合. 下側添え字移動距離は, 次の中で最大のものです.

    The munder base is an embellished operator with the largeop property. UnderShift is the maximum of

    下側添え字追加ディセントは0です.

    UnderExtraDescender is 0.

  2. munderの基となる式が, stretchyプロパティを持ち, 伸長軸が行内軸の装飾された演算子の場合. 下側添え字移動距離は, 次の中で最大のものです.

    The munder base is an embellished operator with the stretchy property and stretch axis inline. UnderShift is the maximum of:

    下側添え字追加ディセントは0です.
    UnderExtraDescender is 0.
  3. それら以外の場合, 下側添え字移動距離は, accentunder属性が大文字・小文字を区別せずにtrueに一致するならUnderbarVerticalGapで, そうでなければ0です. 下側添え字追加ディセントUnderbarExtraDescenderです.
    Otherwise, UnderShift is equal to UnderbarVerticalGap if the accentunder attribute is not an ASCII case-insensitive match to true and to zero otherwise. UnderExtraAscender is UnderbarExtraDescender.

添え字付きの式の数学コンテンツの行アセントは, 次の中で最大のものです.

The line-ascent of the math content is the maximum between:

添え字付きの式の数学コンテンツの行ディセントは, 次の中で最大のものです.

The line-descent of the math content is the maximum between:

munderの基となる式欧文ベースラインは, 全体の欧文ベースラインに揃えられます. munderの下側添え字欧文ベースラインは, 全体の欧文ベースラインから, munderの基となる式マージンボックス字面行ディセント + 下側添え字移動距離の分, 行下面の方へずらされます.

The alphabetic baseline of the munder base is aligned with the alphabetic baseline. The alphabetic baseline of the munder underscript is shifted away from the alphabetic baseline and towards the line-under by a distance equal to the ink line-descent of the munder base's margin box + UnderShift.

数学コンテンツボックスは, 内容ボックスの中で, お互いのブロック始端が揃えられるように, 左右の両端の真ん中がお互いに同じ場所になるように位置決めされます.

The math content box is placed within the content box so that their block-start edges are aligned and the middles of these edges are at the same position.

3.4.2.4 上側添え字と式
Base with overscript

<mover>要素は, 21で示されたように配置されます. 大きな演算子のイタリック補正は, moverの基となる式largeopプロパティを持つ修飾された演算子ならその式のイタリック補正, そうでなければ0です.

The <mover> element is laid out as shown on Figure 21. LargeOpItalicCorrection is the italic correction of the mover base if it is an embellished operator with the largeop property and 0 otherwise.

21 <mover>要素に対するボックスモデル
Figure 21 Box model for the <mover> element

添え字付きの式の数学コンテンツの最小内容行内サイズ(または, 最大内容行内サイズ)は, 後で述べる数学コンテンツの行内サイズと同じように, ただし, moverの基となる式マージンボックスmoverの上側添え字マージンボックスにおける行内サイズを, moverの基となる式マージンボックスmover の上側添え字マージンボックスにおける最小内容行内サイズ(または, 最大内容行内サイズ)に置き換えて算出されます.

The min-content inline size (respectively max-content inline size) of the math content are calculated like the inline size of the math content below but replacing the inline sizes of the mover base's margin box and mover overscript's margin box with the min-content inline size (respectively max-content inline size) of the mover base's margin box and mover overscript's margin box.

フロー内子要素は, 行内軸に沿って演算子を伸長するアルゴリズムを使用して配置されます.

The in-flow children are laid out using the algorithm for stretching operators along the inline axis.

上側アクセント付随位置は, moverの上側添え字上側アクセント付随位置, もしくは, もしその値が定義されていなければ, moverの上側添え字マージンボックス行内サイズの半分です.

The TopAccentAttachment is the top accent attachment of the mover overscript or half the inline size of the mover overscript's margin box if it is undefined.

添え字付きの式の数学コンテンツの行内サイズは, 配置のために行内軸に沿って演算子を伸長するアルゴリズムを適用し, 次の2つの数値の差の絶対値を求めることで算出されます.

The inline size of the math content is calculated by applying the algorithm for stretching operators along the inline axis for layout and determining the absolute difference between:

mが上の2番目で算出された最小値とすると, moverの基となる式行内移動距離は, − m − 基となる式のマージンボックスの行内サイズの半分です. moverの上側添え字行内移動距離は, − m − moverの下側添え字マージンボックス行内サイズの半分 − 大きな演算子のイタリック補正の半分です.

If m is the minimum calculated in the second item above then the inline offset of the mover base is −m − half the inline size of the base's margin. The inline offset of the mover overscript is −m − half the inline size of the mover overscript's margin box + half LargeOpItalicCorrection.

上側添え字移動距離上側添え字追加ディセントのパラメータは, 次の順番で3つの状態を考慮して決められます.

Parameters OverShift and OverExtraDescender are determined by considering three cases in the following order:

  1. moverの基となる式が, largeopプロパティを持つ装飾された演算子の場合. 上側添え字移動距離は次の中で最大のものです.

    The mover base is an embellished operator with the largeop property. OverShift is the maximum of

    上側添え字追加アセントは0です.

    OverExtraAscender is 0.

  2. moverの基となる式が, stretchyプロパティを持ち, 伸長軸が行内軸の装飾された演算子の場合. 上側添え字移動距離は次の中で最大のものです.

    The mover base is an embellished operator with the stretchy property and stretch axis inline. OverShift is the maximum of:

    上側添え字追加アセントは0です.
    OverExtraDescender is 0.
  3. そうでない場合, 上側添え字移動距離は, 次のものに等しいです.

    Otherwise, OverShift is equal to

    1. accent属性が大文字・小文字を区別せずにtrueに一致しないなら, OverbarVerticalGap.
      OverbarVerticalGap if the accent attribute is not an ASCII case-insensitive match to true.
    2. AccentBaseHeight引くmoverの基となる式マージンボックス行アセントが負でないなら, この差.
      Or AccentBaseHeight minus the line-ascent of the mover base's margin box if this difference is nonnegative.
    3. また, いずれでもないなら, 0.
      Or 0 otherwise.

    上側添え字追加アセントOverbarExtraAscenderです.

    OverExtraAscender is OverbarExtraAscender.

注意
Note
最大でAccentBaseHeightである行アセントを持つ, アクセント上側添え字や基となる式に対して, [OPEN-FONT-FORMAT] [TEXBOOK]の決まりが, 上側添え字や基となる式の欧文ベースラインを実際に揃えます. このことは, アクセントの字形が, それらの字面の下端が欧文ベースラインから概ねAccentBaseHeight上にあるように設計されていると見なしています. よって, 上の決まりは, 全ての上側添え字の下端が, 基となる式との衝突を避けて揃えられることを保証するでしょう. しかしながら, MathMLは任意のアクセントを持つことができるので, 上側添え字の下端が基となる式の欧文ベースラインから少なくともAccentBaseHeight上にあることを確かなものにする, より一般的で単純な決まりが上で提供されています.
For accent overscripts and bases with line-ascents that are at most AccentBaseHeight, the rule from [OPEN-FONT-FORMAT] [TEXBOOK] is actually to align the alphabetic baselines of the overscripts and of the bases. This assumes that accent glyphs are designed in such a way that their ink bottoms are more or less AccentBaseHeight above their alphabetic baselines. Hence, the previous rule will guarantee that all the overscript bottoms are aligned while still avoiding collision with the bases. However, MathML can have arbitrary accent overscripts, so a more general and simpler rule is provided above: Ensure that the bottom of overscript is at least AccentBaseHeight above the alphabetic baseline of the base.

添え字付きの式の数学コンテンツの行アセントは, 次の中で最大のものです.

The line-ascent of the math content is the maximum between:

添え字付きの式の数学コンテンツの行ディセントは, 次の中で最大のものです.

The line-descent of the math content is the maximum between:

moverの基となる式欧文ベースラインは, 全体の欧文ベースラインに揃えられます. moverの上側添え字欧文ベースラインは, 全体の欧文ベースラインから, 基となる式の字面行アセント + 上側添え字移動距離の分, 行上面の方へずらされます.

The alphabetic baseline of the mover base is aligned with the alphabetic baseline. The alphabetic baseline of the mover overscript is shifted away from the alphabetic baseline and towards the line-over by a distance equal to the ink line-ascent of the base + OverShift.

数学コンテンツボックスは, 内容ボックスの中で, お互いのブロック始端が揃えられるように, 左右の両端の真ん中がお互いに同じ場所になるように位置決めされます.

The math content box is placed within the content box so that their block-start edges are aligned and the middles of these edges are at the same position.

3.4.2.5 下側・上側添え字と式
Base with underscript and overscript

<munderover>の一般的な配置は, 22に示されるとおりです. 大きな演算子のイタリック補正, 下側添え字移動距離, 下側添え字追加ディセント, 上側添え字移動距離, 上側添え字追加アセントのパラメータは, 3.4.2.3 下側添え字と式3.4.2.4 上側添え字と式と同じように算出されます.

The general layout of <munderover> is shown on Figure 22. The LargeOpItalicCorrection, UnderShift, UnderExtraDescender, OverShift, OverExtraDescender parameters are calculated the same as in 3.4.2.3 Base with underscript and 3.4.2.4 Base with overscript.

22 <munderover>要素に対するボックスモデル
Figure 22 Box model for the <munderover> element

添え字付きの式の数学コンテンツの最小内容行内サイズ, 最大内容行内サイズ, 行内サイズは, 行内移動距離の最大値と行内移動距離の最小値の差の絶対値として算出されます. これらの極値は, 3.4.2.3 下側添え字と式3.4.2.4 上側添え字と式で算出された相当するものの極値の, 最大・最小の値を用いて算出されます. munderoverの基となる式, munderoverの下側添え字, munderoverの上側添え字行内移動距離は, それらの節でのように, ただし, (相当する最小値の中で最小である)新しい最小値 m を用いて算出されます.

The min-content inline size, max-content inline size and inline size of the math content are calculated as an absolute difference between a maximum inline offset and minimum inline offset. These extrema are calculated by taking the extremum value of the corresponding extrema calculated in 3.4.2.3 Base with underscript and 3.4.2.4 Base with overscript. The inline offsets of the munderover base, munderover underscript and munderover overscript are calculated as in these sections but using the new minimum m (minimum of the corresponding minima).

それらの節でのように, フロー内子要素は, 行内軸に沿って演算子を伸長するアルゴリズムを使用して配置されます.

Like in these sections, the in-flow children are laid out using the algorithm for stretching operators along the inline axis.

添え字付きの式の数学コンテンツの行アセント行ディセントは, 3.4.2.3 下側添え字と式3.4.2.4 上側添え字と式で算出された極値の中で, 最大・最小の値を用いて算出されます.

The line-ascent and line-descent of the math content are also calculated by taking the extremum value of the extrema calculated in 3.4.2.3 Base with underscript and 3.4.2.4 Base with overscript.

最終的に, munderoverの基となる式, munderoverの下側添え字 , munderoverの上側添え字欧文ベースラインは, 3.4.2.3 下側添え字と式3.4.2.4 上側添え字と式の節でのように計算されます.

Finally, the alphabetic baselines of the munderover base, munderover underscript and munderover overscript are calculated as in sections 3.4.2.3 Base with underscript and 3.4.2.4 Base with overscript.

数学コンテンツボックスは, 内容ボックスの中で, お互いのブロック始端が揃えられるように, 左右の両端の真ん中がお互いに同じ場所になるように位置決めされます.

The math content box is placed within the content box so that their block-start edges are aligned and the middles of these edges are at the same position.

注意
Note

下側添え字(または, 上側添え字)が空のボックスの場合, 基となる式と上側添え字(または, 下側添え字)は, 3.4.2.4 上側添え字と式(または, 3.4.2.3 下側添え字と式)と同じように配置されます. ただし, 空の下側添え字(または, 上側添え字)の場所には, 追加の空間が付け加えられるかもしれません. アルゴリズムを単純に保つため, 空の添え字を特別な方法で取り扱う試みは何ら行われていません.

When the underscript (respectively overscript) is an empty box, the base and overscript (respectively underscript) are laid out similarly to 3.4.2.4 Base with overscript (respectively 3.4.2.3 Base with underscript) but the position of the empty underscript (respectively overscript) may add extra space. In order to keep the algorithm simple, no attempt is made to handle empty scripts in a special way.

3.4.3 前置の添え字とテンソル添え字 <mmultiscripts>
Prescripts and Tensor Indices <mmultiscripts>

前置の添え字やテンソル添え字は, mmultiscripts要素によって表されます. mprescripts要素は, 後置の添え字と前置の添え字の間の区切りとして使用されます. この2つの要素は, 2.1.3 共通の属性で述べられている属性を持ちます.

Presubscripts and tensor notations are represented by the mmultiscripts element. The mprescripts element is used as a separator between the postscripts and prescripts. These two elements accept the attributes described in 2.1.3 Global Attributes.

次の例は, mprescriptsを含む, 前置と後置の添え字の基本的な使用方法を示しています. 空のmrow要素は, 何も添え字が描画されない場所で使用されています. フォントサイズは, 添え字に対して自動的に縮小されます.

The following example shows basic use of prescripts and postscripts, involving a mprescripts. Empty mrow elements are used at positions where no scripts are rendered. The font-size is automatically scaled down within the scripts.

<math>
  <mmultiscripts>
    <mn>1</mn>
    <mn>2</mn>
    <mn>3</mn>
    <mrow></mrow>
    <mn>5</mn>
    <mprescripts/>
    <mn>6</mn>
    <mrow></mrow>
    <mn>8</mn>
    <mn>9</mn>
  </mmultiscripts>
</math>
mmultiscripts example

<mmultiscripts>要素または<mprescripts>要素が, block mathまたはinline mathに等しいdisplayプロパティの算出値を持たないならば, その要素は, 指定されたプロパティに対応する値について述べているCSS仕様書によって配置されます. そうでなければ, 後で述べる配置が行われます.

If the <mmultiscripts> or <mprescripts> elements do not have their computed display property equal to block math or inline math then they are laid out according to the CSS specification where the corresponding value is described. Otherwise, the layout below is performed.

<mprescripts>要素は, mrow要素のように配置されます.

The <mprescripts> element is laid out as an mrow element.

有効な<mmultiscripts>要素は, 次に示すフロー内子要素を含みます.

A valid <mmultiscripts> element contains the following in-flow children:

  • mmultiscriptsの基となる式と呼ばれる, mprescripts要素でない, 最初のフロー内子要素.
    A first in-flow child, called the mmultiscripts base, that is not an mprescripts element.
  • それに続く, mmultiscriptsの後置添え字と呼ばれる, mprescripts要素でない, 偶数個のフロー内子要素. それらの添え字は, (空の場合もある)下付き添え字, 上付き添え字, 下付き添え字, 上付き添え字といったリストを形作ります. 下付き添え字, 上付き添え字の子要素の連続する各1組は, 下付き・上付き添え字の組と呼ばれます.
    Followed by an even number of in-flow children called mmultiscripts postscripts, none of them being a mprescripts element. These scripts form a (possibly empty) list subscript, superscript, subscript, superscript, subscript, superscript, etc. Each consecutive couple of children subscript, superscript is called a subscript/superscript pair.
  • 省略してもよい, それに続く, mprescripts要素と, mmultiscriptsの前置添え字と呼ばれる, mprescripts要素でない, 偶数個のフロー内子要素. それらの添え字は, (空の場合もある)下付き・上付き添え字の組のリストを形作ります.
    Optionally followed by an mprescripts element and an even number of in-flow children called mmultiscripts prescripts, none of them being a mprescripts element. These scripts form a (possibly empty) list of subscript/superscript pair.

<mmultiscripts>要素が有効でない場合, mrow要素と同じように配置されます. そうでない場合, 配置のアルゴリズムは, 3.4.3.1 前置・後置の添え字と式のとおり実行されます.

If an <mmultiscripts> element is not valid then it is laid out the same as the mrow element. Otherwise the layout algorithm is performed as in 3.4.3.1 Base with prescripts and postscripts.

3.4.3.1 前置・後置の添え字と式
Base with prescripts and postscripts

<mmultiscripts>要素は, 23で示されたように配置されます. mmultiscriptsの後置添え字の各下付き・上付き添え字の組に対して, イタリック補正, 大きな演算子のイタリック補正は, 3.4.1.2 下付き添え字と式3.4.1.3 上付き添え字と式での定義と同じように, 定義されます.

The <mmultiscripts> element is laid out as shown on Figure 23. For each subscript/superscript pair of mmultiscripts postscripts, the ItalicCorrection LargeOpItalicCorrection are defined as in 3.4.1.2 Base with subscript and 3.4.1.3 Base with superscript.

23 <mmultiscripts>要素に対するボックスモデル
Figure 23 Box model for the <mmultiscripts> element

添え字付きの式の数学コンテンツの最小内容行内サイズ(または, 最大内容行内サイズ)は, 後で述べる数学コンテンツの行内サイズと同じように, ただし, mmultiscriptsの基となる式マージンボックスや添え字のマージンボックスに対する"行内サイズ"を, "最小内容行内サイズ"(または, "最大内容行内サイズ")に置き換えて算出します.

The min-content inline size (respectively max-content inline size) of the math content is calculated the same as the inline size of the math content below, but replacing "inline size" with "min-content inline size" (respectively "max-content inline size") for the mmultiscripts base's margin box and scripts' margin boxes.

行内伸長サイズ制限またはブロック伸長サイズ制限がある場合, mmultiscriptsの基となる式も同じサイズ制限を伴って配置されます. そうでない場合, 何らサイズ制限無しで配置されます. 他の要素は, いつでも何らサイズ制限無しに配置されます.

If there is an inline stretch size constraint or a block stretch size constraint the mmultiscripts base is also laid out with the same stretch size constraint. Otherwise it is laid out without any stretch size constraint. The other elements are always laid out without any stretch size constraint.

添え字付きの式の数学コンテンツの行内サイズは, 次のアルゴリズムによって算出されます.

The inline size of the math content is calculated with the following algorithm:

  1. inline-offsetを0に設定します.
    Set inline-offset to 0.
  2. mmultiscriptsの前置演算子の各下付き・上付き添え字の組に対して, inline-offsetSpaceAfterScript + 次の中の最大値分増やします.

    For each subscript/superscript pair of mmultiscripts prescripts, increment inline-offset by SpaceAfterScript + the maximum of

  3. inline-offsetmmultiscriptsの基となる式マージンボックス行内サイズ分増やし, inline-sizeinline-offsetに設定します.
    Increment inline-offset by the inline size of the mmultiscripts base's margin box and set inline-size to inline-offset.
  4. mmultiscriptsの後置添え字の各下付き・上付き添え字の組に対して, 少なくとも次の値以上にinline-sizeを修正します.

    For each subscript/superscript pair of mmultiscripts postscripts, modify inline-size to be at least:

    inline-offsetを次の中の最大値まで増やします.

    Increment inline-offset to the maximum of:

    inline-offsetSpaceAfterScript分増やします.

    Increment inline-offset by SpaceAfterScript.

  5. inline-sizeを返します.
    Return inline-size.

下付き添え字移動距離(または, 上付き添え字移動距離)は, 3.4.1.4 下付き・上付き添え字と式で述べられているように, 各下付き・上付き添え字の組の全ての下付き添え字移動距離(または, 上付き添え字移動距離)の最大値を求めることで算出します.

SubShift (respectively SuperShift) is calculated by taking the maximum of all subshifts (respectively supershifts) of each subscript/superscript pair as described in 3.4.1.4 Base with subscript and superscript.

添え字付きの式の数学コンテンツの行アセントは, 3.4.1.4 下付き・上付き添え字と式で述べられているように, ただし, 上で算出した下付き添え字移動距離上付き添え字移動距離を使用して, 各下付き・上付き添え字の組の全ての行アセントの中の最大値を求めることで算出します.

The line-ascent of the math content is calculated by taking the maximum of all the line-ascent of each subscript/superscript pair as described in 3.4.1.4 Base with subscript and superscript but using the SubShift and SuperShift values calculated above.

添え字付きの式の数学コンテンツの行ディセントは, 3.4.1.4 下付き・上付き添え字と式で述べられているように, ただし, 上で算出した下付き添え字移動距離上付き添え字移動距離を使用して, 各下付き・上付き添え字の組の全ての行ディセントの中の最大値を求めることで算出します.

The line-descent of the math content is calculated by taking the maximum of all the line-descent of each subscript/superscript pair as described in 3.4.1.4 Base with subscript and superscript but using the SubShift and SuperShift values calculated above.

最終的に, フロー内子要素の配置は, 次のアルゴリズムを使用して行われます.

Finally, the placement of the in-flow children is performed using the following algorithm:

  1. inline-offsetを0に設定します.
    Set inline-offset to 0.
  2. mmultiscriptsの前置添え字の各下付き・上付き添え字の組に対して次のことを行います.

    For each subscript/superscript pair of mmultiscripts prescripts:

    1. inline-offsetSpaceAfterScript分増やします.
      Increment inline-offset by SpaceAfterScript.
    2. pair-inline-sizeを次の中の最大値に設定します.
      Set pair-inline-size to the maximum of
    3. 下付き添え字を, 行内始端がinline-offset + pair-inline-size − 下付き添え字のマージンボックス行内サイズとなるように配置します.
      Place the subscript at inline-start position inline-offset + pair-inline-size − the inline size of the subscript's margin box.
    4. 上付き添え字を, 行内始端がinline-offset + pair-inline-size − 上付き添え字のマージンボックス行内サイズとなるようにに配置します.
      Place the superscript at inline-start position inline-offset + pair-inline-size − the inline size of the superscript's margin box.
    5. 下付き添え字(または, 上付き添え字)の欧文ベースラインを全体の欧文ベースラインから下付き添え字移動距離(または, 上付き添え字移動距離)の分, 行下面(または, 行上面)の方へずらされるように, 添え字を配置します.
      Place the subscript (respectively superscript) so its alphabetic baseline is shifted away from the alphabetic baseline by SubShift (respectively SuperShift) towards the line-under (respectively line-over).
    6. inline-offsetpair-inline-size分増やします.
      Increment inline-offset by pair-inline-size.
  3. mmultiscriptsの基となる式<mprescripts>のボックスを, 行内移動距離inline-offsetになるように, 欧文ベースラインが全体の欧文ベースラインに揃えられるように配置します.
    Place the mmultiscripts base and <mprescripts> boxes at inline offsets inline-offset and with their alphabetic baselines aligned with the alphabetic baseline.
  4. mmultiscriptsの後置添え字の各下付き・上付き添え字に対して次のことを行います.

    For each subscript/superscript pair of mmultiscripts postscripts:

    1. pair-inline-sizeを次の中の最大値まで増やします.
      Set pair-inline-size to the maximum of
    2. 下付き添え字を, 行内始端がinline-offset大きな演算子のイタリック補正となるように配置します.
      Place the subscript at inline-start position inline-offsetLargeOpItalicCorrection.
    3. 上付き添え字を, 行内始端がinline-offset + イタリック補正となるように配置します.
      Place the superscript at inline-start position inline-offset + ItalicCorrection.
    4. 下付き添え字(または, 上付き添え字)の欧文ベースラインを全体の欧文ベースラインから下付き添え字移動距離(または, 上付き添え字移動距離)の分, 行下面(または, 行上面)の方へずらされるように, 添え字を配置します.
      Place the subscript (superscript) so its alphabetic baseline is shifted away from the alphabetic baseline by SubShift (respectively SuperShift) towards the line-under (respectively line-over).
    5. inline-offsetpair-inline-size分増やします.
      Increment inline-offset by pair-inline-size.
    6. inline-offsetSpaceAfterScript分増やします.
      Increment inline-offset by SpaceAfterScript.
注意
Note

mmultiscriptsの後置添え字下付き・上付き添え字の組を1つのみ持つ<mmultiscripts>は, 同じフロー内子要素を持つ<msubsup>と同じように配置されます. ただし, これに加えて, <msubsup>の注意のように, 下付き添え字(または, 上付き添え字)が空のボックスであるなら, 必ずしも<msub>要素(または, <msup>要素)と同じようには配置されません. アルゴリズムを単純に保つため, 空の添え字を特別な方法で取り扱う試みは何ら行われていません.

An <mmultiscripts> with only one subscript/superscript pair of mmultiscripts postscripts is laid out the same as a <msubsup> with the same in-flow children. However, as noticed for <msubsup>, if additionally the subscript (respectively superscript) is an empty box then it is not necessarily laid out the same as an <msub> (respectively <msup>) element. In order to keep the algorithm simple, no attempt is made to handle empty scripts in a special way.

3.4.4 添え字におけるdisplaystyle, scriptlevel, math-shift
Displaystyle, scriptlevel and math-shift in scripts

全ての添え字要素に対して, 経験的にdisplaystylefalseに設定し, 最初のものを除く全ての子要素のscriptlevelを増やします. ただし, 大文字・小文字を区別せずにtrueに一致するaccent属性を持つmover要素(または, munderover要素)については, 2番目の子要素(または, 3番目の子要素)のscriptlevelを増やしません. 同様に, 大文字・小文字を区別せずにtrueに一致すaccentunder属性を持つmover要素とmunderover要素については, 2番目の子要素のscriptlevelを増やしません.

For all scripted elements, the rule of thumb is to set displaystyle to false and to increment scriptlevel in all child elements but the first one. However, an mover (respectively munderover) element with an accent attribute that is an ASCII case-insensitive match to true does not increment scriptlevel within its second child (respectively third child). Similarly, mover and munderover elements with an accentunder attribute that is an ASCII case-insensitive match to true do not increment scriptlevel within their second child.

<mmultiscripts>は, mprescriptsよりに前にある偶数番目の子要素と, mprescriptsより後にある奇数番目の子要素の, math-shiftcompactに設定します. <msub>要素と<msubsup>要素は, 2番目の子要素のmath-shiftcompactに設定します. また, 大文字・小文字を区別せずにtrueに一致するaccent属性を持つmover要素とmunderover要素は, 最初の子要素のmath-shiftcompactに設定します.

<mmultiscripts> sets math-shift to compact on its children at even position if they are before an mprescripts, and on those at odd position if they are after an mprescripts. The <msub> and <msubsup> elements set math-shift to compact on their second child. mover and munderover elements with an accent attribute that is an ASCII case-insensitive match to true also set math-shift to compact within their first child.

A. ユーザーエージェントのスタイルシートは, この挙動を実装するために, 次の決まりを含まなければなりません.

The A. User Agent Stylesheet must contain the following style in order to implement this behavior:

msub > :not(:first-child),
msup > :not(:first-child),
msubsup > :not(:first-child),
mmultiscripts > :not(:first-child),
munder > :not(:first-child),
mover > :not(:first-child),
munderover > :not(:first-child) {
  math-depth: add(1);
  math-style: compact;
}
munder[accentunder="true" i] > :nth-child(2),
mover[accent="true" i] > :nth-child(2),
munderover[accentunder="true" i] > :nth-child(2),
munderover[accent="true" i] > :nth-child(3) {
  font-size: inherit;
}
msub > :nth-child(2),
msubsup > :nth-child(2),
mmultiscripts > :nth-child(even),
mmultiscripts > mprescripts ~ :nth-child(odd),
mover[accent="true" i] > :first-child,
munderover[accent="true" i] > :first-child {
  math-shift: compact;
}
mmultiscripts > mprescripts ~ :nth-child(even) {
  math-shift: inherit;
}
注意
Note
実際のところ, この節で述べたMathML要素の子要素は全てフロー内要素で, <mprescripts>は空要素です. したがって, CSSの決まりは, 本質的には添え字に対する自動的なdisplaystylescriptlevelの変更, また, 下付き添え字や, 時には基となる式に対するmath-shiftの変更として機能します.
In practice, all the children of the MathML elements described in this section are in-flow and the <mprescripts> is empty. Hence the CSS rules essentially perform automatic displaystyle and scriptlevel changes for the scripts; and math-shift changes for subscripts and sometimes the base.

3.5 表のような数学
Tabular Math

行列, 配列, その他の表のような数学表記は,mtable要素, mtr要素, mtd要素を使用して記述されます. これらの要素は, [HTML]のtable要素, tr要素, td要素に類似しています.

Matrices, arrays and other table-like mathematical notation are marked up using mtable mtr mtd elements. These elements are similar to the table, tr and td elements of [HTML].

次の例は, 表の配置が行列を書くことを, どのように可能にするかについて示しています. この要素は, 分数の線や等号の中心に合わせて, 鉛直方向に中央揃えされることに注意して下さい.

The following example shows how tabular layout allows to write a matrix. Note that it is vertically centered with the fraction bar and the middle of the equal sign.

<math>
  <mfrac>
    <mi>A</mi>
    <mn>2</mn>
  </mfrac>
  <mo>=</mo>
  <mrow>
    <mo>(</mo>
    <mtable>
      <mtr>
        <mtd><mn>1</mn></mtd>
        <mtd><mn>2</mn></mtd>
        <mtd><mn>3</mn></mtd>
      </mtr>
      <mtr>
        <mtd><mn>4</mn></mtd>
        <mtd><mn>5</mn></mtd>
        <mtd><mn>6</mn></mtd>
      </mtr>
      <mtr>
        <mtd><mn>7</mn></mtd>
        <mtd><mn>8</mn></mtd>
        <mtd><mn>9</mn></mtd>
      </mtr>
    </mtable>
    <mo>)</mo>
  </mrow>
</math>
tables example

3.5.1 表や行列 <mtable>
Table or Matrix <mtable>

mtableは, inline-tableとして配置され, displaystylefalseに設定します. ユーザーエージェントのスタイルシートは, これらのプロパティを実装するために, 次の決まりを含まなければなりません.

The mtable is laid out as an inline-table and sets displaystyle to false. The user agent stylesheet must contain the following rules in order to implement these properties:

mtable {
  display: inline-table;
  math-style: compact;
}

mtable要素は, CSSのtableのようであり, 最小内容行内サイズ, 最大内容行内サイズ, 行内サイズ, ブロックサイズ, 最初の基準線集合, 最後の基準線集合は, CSSに応じて決められます. 表の中心は, 数学軸に揃えられます.

The mtable element is as a CSS table and the min-content inline size, max-content inline size, inline size, block size, first baseline set and last baseline set sets are determined accordingly. The center of the table is aligned with the math axis.

<mtable>は, 2.1.3 共通の属性で述べられている属性を持ちます.

The <mtable> accepts the attributes described in 2.1.3 Global Attributes.

3.5.2 表や行列の行 <mtr>
Row in Table or Matrix <mtr>

mtrは, table-rowとして配置されます. ユーザーエージェントのスタイルシートは, この挙動を実装するために, 次の決まりを含まなければなりません.

The mtr is laid out as table-row. The user agent stylesheet must contain the following rules in order to implement that behavior:

mtr {
  display: table-row;
}

<mtr>は, 2.1.3 共通の属性で述べられている属性を持ちます.

The <mtr> accepts the attributes described in 2.1.3 Global Attributes.

3.5.3 表や行列の要素 <mtd>
Entry in Table or Matrix <mtd>

mtdは, 要素の中で中央揃えされる中身と所定の余白を伴って, table-cellとして配置されます. ユーザーエージェントのスタイルシートは, 次の決まりを含まなければなりません.

The mtd is laid out as a table-cell with content centered in the cell and a default padding. The user agent stylesheet must contain the following rules:

mtd {
  display: table-cell;
  /* Centering inside table cells should rely on box alignment properties.
     See https://github.com/w3c/mathml-core/issues/156 */
  (訳注:"表の要素の中で中央揃えするには, ボックス位置揃えプロパティに頼るべきです.
   https://github.com/w3c/mathml-core/issues/156を参照して下さい."の意味)
  text-align: center;
  padding: 0.5ex 0.4em;
}

<mtd>は, 2.1.3 共通の属性で述べられている属性と, 次の属性を持ちます.

The <mtd> accepts the attributes described in 2.1.3 Global Attributes as well as the following attributes:

columnspan属性(または, rowspan属性)は, [HTML]の<td>要素のcolspan属性(または, rowspan属性)と同じ構文と意味を持ちます. 特に, それらの属性の処理は, 常に"colspan"を"columnspan"として読み替えながら, 行を処理するアルゴリズムで説明されているとおりに扱われます.

The columnspan (respectively rowspan) attribute has the same syntax and semantics as the colspan (respectively rowspan) attribute on the <td> element from [HTML]. In particular, the parsing of these attributes is handled as described in the algorithm for processing rows, always reading "colspan" as "columnspan".

注意
Note
[MathML3]や従前版での列を広げる属性の名前はcolumnspanで, 下位互換性のために予約されています.
The name of the column spanning attribute in [MathML3] and earlier versions is columnspan and is preserved for backward compatibility reasons.

<mtd>要素は, 名前無し<mrow>ボックスを生成します.

The <mtd> element generates an anonymous <mrow> box.

3.6 式に動きを付ける
Enlivening Expressions

歴史的に, maction要素は, 式に動きを結び付ける仕組みを提供します.

Historically, the maction element provides a mechanism for binding actions to expressions.

<maction>要素は, 2.1.3 共通の属性で述べられている属性と, 次の属性を持ちます.

The <maction> element accepts the attributes described in 2.1.3 Global Attributes as well as the following attributes:

この仕様書は, actiontype属性とselection属性に指定する何ら注目すべき挙動を定義していません.

This specification does not define any observable behavior that is specific to the actiontype and selection attributes.

次の例は, 描画ソフトウェアが代わる代わる選択された式を表示する, "3分の1"から始まって, ("4分の1", "2分の1", "3分の1", など)の選択された式をクリックするたびに循環させる, [MathML3]での動作の型"toggle"を示しています. これらは, MathMLコアの一部ではありませんが, JavaScriptとCSSポリフィルを用いて実装することができます. 通常の挙動は, 単に最初の子要素を描画します.

The following example shows the "toggle" action type from [MathML3] where the renderer alternately displays the selected subexpression, starting from "one third" and cycling through them when there is a click on the selected subexpression ("one quarter", "one half", "one third", etc). This is not part of MathML Core but can be implemented using JavaScript and CSS polyfills. The default behavior is just to render the first child.

<math>
  <maction actiontype="toggle" selection="2">
    <mfrac>
      <mn>1</mn>
      <mn>2</mn>
    </mfrac>
    <mfrac>
      <mn>1</mn>
      <mn>3</mn>
    </mfrac>
    <mfrac>
      <mn>1</mn>
      <mn>4</mn>
    </mfrac>
  </maction>
</math>
maction example

<maction>要素の配置アルゴリズムは, <mrow>要素のものと同じです. ユーザーエージェントのスタイルシートは, 昔からのactiontypeの値に対する所定の挙動のとおり, 最初の子要素以外の全ての要素を隠すために, 次の決まりを含まなければなりません.

The layout algorithm of the <maction> element is the same as the <mrow> element. The user agent stylesheet must contain the following rules in order to hide all but its first child element, which is the default behavior for the legacy actiontype values:

maction > :not(:first-child) {
  display: none;
}
注意
Note
<maction>は, 完全なMathMLとの互換性のための実装です. MathMLコアのみを対象とする著者は, 個別の動作を実装するのに, 他のHTML, CSS, JavaScriptの仕組みを利用することが推奨されます. それらは, [MathML3]で定義されたmaction属性を当てにしてもよいです.
<maction> is implemented for compatibility with full MathML. Authors whose only target is MathML Core are encouraged to use other HTML, CSS and JavaScript mechanisms to implement custom actions. They may rely on maction attributes defined in [MathML3].

3.7 意味と表現
Semantics and Presentation

semantics要素は, MathMLの式に付加情報を付け加える入れ物要素です. 典型的に, <semantics>要素は, 最初の子要素としてMathMLの式を持ち, その式の後に続く子要素が付け加えられます. 後に続く子要素は, annotation要素の中の文字列の付加情報や, annotation-xml要素の中のより複雑なマークアップの付加情報を表します.

The semantics element is the container element that associates annotations with a MathML expression. Typically, the <semantics> element has as its first child element a MathML expression to be annotated while subsequent child elements represent text annotations within an annotation element, or more complex markup annotations within an annotation-xml element.

次の例は, どのように分数"2分の1"に, 文字列の付加情報(LaTeX)や, XML付加情報(コンテントMathML)を付け加えるかを示しています. これらの付加情報は, ユーザーエージェントに描画されることを意図していません. この分数は, 同じ描画となるSVGやHTMLのマークアップも付け加えられています.

The following example shows how the fraction "one half" can be annotated with a textual annotation (LaTeX) or an XML annotation (content MathML), which are not intended to be rendered by the user agent. This fraction is also annotated with equivalent SVG and HTML markup.

<math>
  <semantics>
    <mfrac>
      <mn>1</mn>
      <mn>2</mn>
    </mfrac>
    <annotation encoding="application/x-tex">\frac{1}{2}</annotation>
    <annotation-xml encoding="application/mathml-content+xml">
      <apply>
        <divide/>
         <cn>1</cn>
         <cn>2</cn>
      </apply>
    </annotation-xml>
    <annotation-xml>
      <svg width="25" height="75" xmlns="http://www.w3.org/2000/svg">
        <path stroke-width="5.8743"
              d="m5.9157 27.415h6.601v-22.783l-7.1813 1.4402v-3.6805l7.1408
                 -1.4402h4.0406v26.464h6.601v3.4005h-17.203z"/>
        <path stroke="#000000" stroke-width="2.3409"
              d="m0.83496 39.228h23.327"/>
        <path stroke-width="5.8743"
              d="m8.696 70.638h14.102v3.4005h-18.963v-3.4005q2.3004-2.3804
                 6.2608-6.3813 3.9806-4.0206 5.0007-5.1808 1.9403-2.1803
                 2.7004-3.6805 0.78011-1.5202 0.78011-2.9804 0-2.3804
                 -1.6802-3.8806-1.6603-1.5002-4.3406-1.5002-1.9003 0-4.0206
                 0.6601-2.1003 0.6601-4.5007 2.0003v-4.0806q2.4404-0.98013
                 4.5607-1.4802 2.1203-0.50007 3.8806-0.50007 4.6407 0 7.401
                 2.3203 2.7604 2.3203 2.7604 6.2009 0 1.8403-0.7001 3.5006
                 -0.68013 1.6402-2.5004 3.8806-0.50007 0.58009-3.1805 3.3605
                 -2.6804 2.7604-7.5614 7.7412z"/>
      </svg>
    </annotation-xml>
    <annotation-xml encoding="application/xhtml+xml">
      <div style="display: inline-flex;
                  flex-direction: column; align-items: center;">
        <div>1</div>
        <div></div>
        <div>2</div>
      </div>
    </annotation-xml>
  </semantics>
</math>
semantics example

<semantics>要素は, 2.1.3 共通の属性で述べられている属性を持ちます. この配置アルゴリズムは, mrow要素のものと同じです. ユーザーエージェントのスタイルシートは, 付加情報の付いたMathMLの式のみを描画するために, 次の決まりを含まなければなりません.

The <semantics> element accepts the attributes described in 2.1.3 Global Attributes. Its layout algorithm is the same as the mrow element. The user agent stylesheet must contain the following rule in order to only render the annotated MathML expression:

semantics > :not(:first-child) {
  display: none;
}

<annotation-xml>要素と<annotation>要素は, 2.1.3 共通の属性で述べられている属性と, 次の属性を持ちます.

The <annotation-xml> and <annotation> element accepts the attributes described in 2.1.3 Global Attributes as well as the following attribute:

この仕様書は, encoding属性に指定する何ら注目すべき挙動を定義していません.

This specification does not define any observable behavior that is specific to the encoding attribute.

<annotation-xml>要素と<annotation>要素の配置アルゴリズムは, mtext要素のものと同じです.

The layout algorithm of the <annotation-xml> and <annotation> element is the same as the mtext element.

注意
Note
著者は, HTMLの結合部分, クリップボードへのコピー, 代替の描画などの付加情報を区別するために, encoding属性を使用できます. 特に, CSSは, 代替の付加情報などを描画するのに使用できます.
Authors can use the encoding attribute to distinguish annotations for HTML integration point, clipboard copy, alternative rendering, etc. In particular, CSS can be used to render alternative annotations, e.g.
/* Hide the annotated child. */
(訳注:"付け加えられた子要素を隠す"の意味)
semantics > :first-child { display: none; }
 /* Show all text annotations. */
(訳注:"文字列の付加情報を全て表示する"の意味)
semantics > annotation { display: inline; }
/* Show all HTML annotations. */
(訳注:"HTML付加情報を全て表示する"の意味)
semantics > annotation-xml[encoding="text/html" i],
semantics > annotation-xml[encoding="application/xhtml+xml" i] {
  display: inline-block;
}

4. 数学配置のためのCSS拡張
CSS Extensions for Math Layout

4.1 display: block mathと値display: inline math
The display: block math and display: inline math value

CSS Display Module Level 3(訳注:"CSS表示モジュール"の意味)からのdisplayプロパティは, 新しい内部表示型で拡張されます.

The display property from CSS Display Module Level 3 is extended with a new inner display type:

名前:
Name:
display
新しい値:
New value:
<display-outside> || [ <display-inside> | math ]

MathML要素でない要素に対して, displayの指定値がinline mathまたはblock mathである場合, 算出値は, それぞれblock flowinline flowです. mtable要素に対しては, 算出値は, それぞれblock tableinline tableです. mtr要素に対しては, 算出値はtable-rowです. mtd要素に対しては, 算出値はtable-cellです.

For elements that are not MathML elements, if the specified value of display is inline math or block math then the computed value is block flow and inline flow respectively. For the mtable element the computed value is block table and inline table respectively. For the mtr element, the computed value is table-row. For the mtd element, the computed value is table-cell.

block mathまたはinline mathに等しいdisplayの算出値を持つMathML要素は, 関係する節で述べられているように, ボックスの生成やそれらのタグの名前に応じた配置を制御します. MathML未知要素は, mrow要素と同じようにふるまいます.

MathML elements with a computed display value equal to block math or inline math control box generation and layout according to their tag name, as described in the relevant sections. Unknown MathML elements behave the same as the mrow element.

注意
Note
display: block mathと値display: inline mathは, MathML要素に対する所定の配置を提供し, 同時に元々のdisplayの値または特別な値でその値を上書きすることが認められています. このことは, 著者やポリフィルに, MathMLコアを微調整したり拡張したりするための, 独自の特別な値を定義することを認めています.
The display: block math and display: inline math values provide a default layout for MathML elements while at the same time allowing to override it with either native display values or custom values. This allows authors or polyfills to define their own custom notations to tweak or extend MathML Core.

次の例において, MathMLmrow要素の所定の配置を, 格子として中身を描画するよう上書きします.

In the following example, the default layout of the MathML mrow element is overridden to render its content as a grid.

<math>
  <msup>
    <mrow>
      <mo symmetric="false">[</mo>
      <mrow style="display: block; width: 4.5em;">
        <mrow style="display: grid;
                     grid-template-columns: 1.5em 1.5em 1.5em;
                     grid-template-rows: 1.5em 1.5em;
                     justify-items: center;
                     align-items: center;">
          <mn>12</mn>
          <mn>34</mn>
          <mn>56</mn>
          <mn>7</mn>
          <mn>8</mn>
          <mn>9</mn>
        </mrow>
      </mrow>
      <mo symmetric="false">]</mo>
    </mrow>
    <mi>α</mi>
  </msup>
</math>
display example

4.2 新しいtext-transformの値
New text-transform values

CSS Text Module Level 3(訳注:"CSSテキストモジュール")からのtext-transformプロパティは新しい値で拡張されます.

The text-transform property from CSS Text Module Level 3 is extended with a new value:

名前:
Name:
text-transform
新しい値:
New value:
math-auto

単独の文字を含むテキストノードにおいて, 算出値がmath-autoの場合, 変形された文字は, 各文字をitalicの対応表によって変換を行うことで得られます.

On text nodes containing a single character, if the computed value is math-auto then the transformed text is obtained by performing conversion of each character according to the italic table.

一般的な書式の慣行は, 複数の文字から成る識別子(例えば関数の名前"exp")を通常の字体で, 単独の文字から成る識別子(例えば, 変数"n")をイタリック体で描画することです. math-autoプロパティは, 必要なら著者が上書きできる, それらの所定の挙動を実装することを意図しています. 数学フォントは, イタリック体のフォントの書式を通じて得られた書体とは異なる, C.13 italicの対応表のユニコードの位置にある, 特別な種類のイタリック体の字形で設計されていることに注意して下さい. 次の例は, font-style: italic(左)とtext-transform: math-auto(右)を使用した, Latin Modern Mathフォントで描画した数式を比較しています.

A common style convention is to render identifiers with multiple letters (e.g. the function name "exp") with normal style and identifiers with a single letter (e.g. the variable "n") with italic style. The math-auto property is intended to implement this default behavior, which can be overridden by authors if necessary. Note that mathematical fonts are designed with a special kind of italic glyphs located at the Unicode positions of C.13 italic mappings, which differ from the shaping obtained via italic font style. Compare this mathematical formula rendered with the Latin Modern Math font using font-style: italic (left) and text-transform: math-auto (right):

font-style: italic VS text-transform: math-auto

4.3 math-styleプロパティ
The math-style property

名前:
Name:
math-style
値:
Value:
normal | compact
初期値:
Initial:
normal
適用対象:
Applies to:
全ての要素
All elements
継承:
Inherited:
する
yes
百分率:
Percentages:
受容しない
n/a
算出値:
Computed value:
特定の用語
specified keyword
正規順序:
Canonical order:
なし
n/a
アニメーション型:
Animation type:
アニメーション不可
not animatable
メディア:
Media:
visual

math-stylecompactのとき, 子孫要素における数学配置は, 次の決まりを適用することで論理高さを最小化しようとします.

When math-style is compact, the math layout on descendants tries to minimize the logical height by applying the following rules:

次の例は, math-style: compact(左)とmath-style: normal(右)で書式を決められたmathの根と一緒に描画された数式を示しています. 前者では, フォントサイズは, 分数の中で自動的に縮小され, 総和の極限は, ∑の下付き添え字と上付き添え字として描画されます. 後者では, ∑は, 通常の文字より大きく描画され, (現在のフォントサイズに関係してさえいる)分数の鉛直方向の離隔は, より大きくなります.

The following example shows a mathematical formula rendered with its math root styled with math-style: compact (left) and math-style: normal (right). In the former case, the font-size is automatically scaled down within the fractions and the summation limits are rendered as subscript and superscript of the ∑. In the latter case, the ∑ is drawn bigger than normal text and vertical gaps within fractions (even relative to current font-size) are larger.

math-style example

これら2つのmath-styleの値は, 典型的にそれぞれ[TeXBook]のインラインモードとディスプレイモードでの数式に対応します. ディスプレイモードの数式は, (例えば, 添え字, 行列の要素, 分子や分母などの)何らかの式の中で自動的にインラインモードに切り替えられてもよく, また, この所定の挙動を上書きすることが望ましいときもあります. math-styleプロパティは, MathMLに対するこれらの機能を, ユーザーエージェントのスタイルシートの中やdisplaystyle属性によって, もしくは, ポリフィルにそれらを触れさせることで簡潔に実装してもよいです.

These two math-style values typically correspond to mathematical expressions in inline and display mode respectively [TeXBook]. A mathematical formula in display mode may automatically switch to inline mode within some subformulas (e.g. scripts, matrix elements, numerators and denominators, etc) and it is sometimes desirable to override this default behavior. The math-style property allows to easily implement these features for MathML in the user agent stylesheet and with the displaystyle attribute; and also exposes them to polyfills.

4.4 math-shiftプロパティ
The math-shift property

名前:
Name:
math-shift
値:
Value:
normal | compact
初期値:
Initial:
normal
適用対象:
Applies to:
全ての要素
All elements
継承:
Inherited:
する
yes
百分率:
Percentages:
受容しない
n/a
算出値:
Computed value:
特定の用語
specified keyword
正規順序:
Canonical order:
なし
n/a
アニメーション型:
Animation type:
アニメーション不可
not animatable
メディア:
Media:
visual

math-shiftの値がcompactの場合, 子孫要素における数学配置は, 上付き添え字の位置を決めるのにsuperscriptShiftUpCrampedパラメータを使用するでしょう. math-shiftの値がnormalの場合, 数学配置は, 代わりにsuperscriptShiftUpパラメータを使用するでしょう.

If the value of math-shift is compact, the math layout on descendants will use the superscriptShiftUpCramped parameter to place superscript. If the value of math-shift is normal, the math will use the superscriptShiftUp parameter instead.

このプロパティは, MathML添え字要素の配置において, 上付き添え字の位置を決めるのに使用されます. § 3.4.1 下付きや上付きの添え字<msub>, <msup>, <msubsup>, 3.4.3 前置の添え字とテンソル添え字<mmultiscripts>, 3.4.2 下側や上側の添え字<munder>, <mover>, <munderover>を参照して下さい.

This property is used for positioning superscript during the layout of MathML scripted elements. See § 3.4.1 Subscripts and Superscripts <msub>, <msup>, <msubsup>, 3.4.3 Prescripts and Tensor Indices <mmultiscripts> and 3.4.2 Underscripts and Overscripts <munder>, <mover>, <munderover>.

次の例において, 2つの"xの2乗"は, math-styleがcompactで, font-sizeが同じもので描画されています. ただし, 平方根の中のものは, math-shiftがcompactで描画され, もう一方は, math-shiftがnormalで描画されており, 上付き添え字"2"の微妙な移動距離の違いとなっています.

In the following example, the two "x squared" are rendered with compact math-style and the same font-size. However, the one within the square root is rendered with compact math-shift while the other one is rendered with normal math-shift, leading to subtle different shift of the superscript "2".

math-shift example

[TeXBook]を通じて, 数式は, normalの書式を通常使用しますが, (例えば, 根, 分数の分母などの)何らかの式の中で, (Texの用語で"cramped"(訳注:"窮屈"の意味)である)compactの書式に切り替わってもよいです. math-shiftプロパティは, MathMLに対するこれらの決まりをユーザーエージェントのスタイルシートの中で簡単に実装できます. 文書の著者やポリフィルの開発者も, 所定の実装を微調整したり洗練したりするのに, このプロパティに触れることで実現に近づいてもよいです.

Per [TeXBook], a mathematical formula uses normal style by default but may switch to compact style ("cramped" in TeX's terminology) within some subformulas (e.g. radicals, fraction denominators, etc). The math-shift property allows to easily implement these rules for MathML in the user agent stylesheet. Page authors or developers of polyfills may also benefit from having access to this property to tweak or refine the default implementation.

4.5 math-depthプロパティ
The math-depth property

新しいmath-depthプロパティは, 数式の各要素に対する, その式の一番上の入れ物要素に関連した"深さ"の表記について述べるために導入されました. 具体的に, このプロパティは, font-sizeプロパティの指定値がmathのときに, このプロパティの算出値を決めるのに使われます.

A new math-depth property is introduced to describe a notion of "depth" for each element of a mathematical formula, with respect to the top-level container of that formula. Concretely, this is used to determine the computed value of the font-size property when its specified value is math.

名前:
Name:
math-depth
値:
Value:
auto-add | add(<integer>) | <integer>
初期値:
Initial:
0
適用対象:
Applies to:
全ての要素
All elements
継承:
Inherited:
する
yes
百分率:
Percentages:
受容しない
n/a
算出値:
Computed value:
整数, 下記参照
an integer, see below
正規順序:
Canonical order:
なし
n/a
アニメーション型:
Animation type:
アニメーション不可
not animatable
メディア:
Media:
visual

math-depthの値の算出値は, 次のように決められます.

The computed value of the math-depth value is determined as follows:

font-sizeの指定値がmathの場合, font-sizeの算出値は, font-sizeの継承された値に, 次の手続きで算出される0でない換算係数を掛けることで得られます.

If the specified value font-size is math then the computed value of font-size is obtained by multiplying the inherited value of font-size by a nonzero scale factor calculated by the following procedure:

  1. Aを継承されたmath-depthの値, Bをmath-depthの算出値, Cを0.71, Sを1.0とします.
    Let A be the inherited math-depth value, B the computed math-depth value, C be 0.71 and S be 1.0
    • A = Bなら, Sを返します.
      If A = B then return S.
    • B < Aなら AとBを交換し, InvertScaleFactorをtrueに設定します.
      If B < A, swap A and B and set InvertScaleFactor to true.
    • いずれでもなくB > Aなら, InvertScaleFactorをfalseに設定します.
      Otherwise B > A and set InvertScaleFactor to false.
  2. EをB - A > 0とします.
    Let E be B - A > 0.
  3. 継承された可用な最初のフォントがOpenType MATHテーブルを持っている場合,
    If the inherited first available font has an OpenType MATH table:
  4. SにCEを掛けます.
    Multiply S by CE.
  5. InvertScaleFactorがfalseならSを, そうでなければ1/Sを返します.
    Return S if InvertScaleFactor is false and 1/S otherwise.

次の例は, math-styleがnormalで, Latin Modern Mathフォントで描画した数式を示しています. 添え字や分数のような式を入力する場合, フォントサイズは, フォントに含まれているMATHテーブルの値によって自動的に縮小されます. フォントサイズは, 上付き添え字を入力する場合に縮小されますが, 根の指数を入力する場合はさらに小さくなります. また, フォントサイズは, 分数の中の分数を入力する場合にも縮小されますが, そうでないものは, 分数の中のmath-styleが自動的に変更されるため, 縮小されません.

The following example shows a mathematical formula with normal math-style rendered with the Latin Modern Math font. When entering subexpressions like scripts or fractions, the font-size is automatically scaled down according to the values of MATH table contained in that font. Note that font-size is scaled down when entering the superscripts but even faster when entering a root's prescript. Also it is scaled down when entering the inner fraction but not when entering the outer one, due to automatic change of math-style in fractions.

font-size-scriptlevel example

[TeXBook]からのこれらの決まりは巧妙で, これらを表現し制御する独立したmath-depthの仕組みを持つことは有用です. これらは, ユーザーエージェントのスタイルシートを使用して, MathMLの中で実装されます. 文書の著者やポリフィルの開発者は, 所定の実装を微調整したり洗練したりするのに, このプロパティに触れることで実現に近づいてもよいです. 特に, MathMLのscriptlevel属性は, math-depthの変更を行う方法を提供します.

These rules from [TeXBook] are subtle and it's worth having a separate math-depth mechanism to express and handle them. They can be implemented in MathML using the user agent stylesheet. Page authors or developers of polyfills may also benefit from having access to this property to tweak or refine the default implementation. In particular, the scriptlevel attribute from MathML provides a way to perform math-depth changes.

5. OpenType MATHテーブル
OpenType MATH table

この章は, OpenTypeフォント[OPEN-FONT-FORMAT]のMATHテーブルによって提供される機能について述べています. この章の至るところで, Cに似た表記Table.Subtable1[index].Subtable2.ParameterがOpenTypeパラメータを示すために使用されています. そのようなパラメータは, (例えば, フォントが下位テーブルの1つを欠いている, 無効な移動距離を持っているといった具合に)利用できないかもしれず, そのため予備の選択肢が提供されます.

This chapter describes features provided by MATH table of an OpenType font [OPEN-FONT-FORMAT]. Throughout this chapter, a C-like notation Table.Subtable1[index].Subtable2.Parameter is used to denote OpenType parameters. Such parameters may not be available (e.g. if the font lacks one of the subtable, has an invalid offset, etc) and so fallback options are provided.

注意
Note
好ましいOpenTypeの機能と数学フォントを使用して, MathMLを描画することが強く推奨されます. 提供される予備の選択肢が描画に十分良いものを提供する保証は何らありません.
It is strongly encouraged to render MathML with a math font with the proper OpenType features. There is no guarantee that the fallback options provided will provide good enough rendering.

設計単位で(場合によってはMathValueRecordの入力を通じて間接的に)表されたOpenTypeの値は, head.unitsPerEm, CSSのfont-size, 拡大倍率を考慮して配置の意図に対する適切な値に縮尺を変更されます.

OpenType values expressed in design units (perhaps indirectly via a MathValueRecord entry) are scaled to appropriate values for layout purpose, taking into account head.unitsPerEm, CSS font-size or zoom level.

5.1 配置の定数(MathConstants)
Layout constants (MathConstants)

可用な最初のフォントに対する共通の配置の定数があります.

These are global layout constants for the first available font:

Default fallback constant
0
Default rule thickness
post.underlineThickness, または, その定数が利用できない場合, Default fallback constant.
post.underlineThickness or Default fallback constant if the constant is not available.
scriptPercentScaleDown
MATH.MathConstants.scriptPercentScaleDown / 100, または, MATH.MathConstants.scriptPercentScaleDownがnullか利用できない場合, 0.71.
MATH.MathConstants.scriptPercentScaleDown / 100 or 0.71 if MATH.MathConstants.scriptPercentScaleDown is null or not available.
scriptScriptPercentScaleDown
MATH.MathConstants.scriptScriptPercentScaleDown / 100, または, MATH.MathConstants.scriptScriptPercentScaleDownがnullか利用できない場合, 0.5041.
MATH.MathConstants.scriptScriptPercentScaleDown / 100 or 0.5041 if MATH.MathConstants.scriptScriptPercentScaleDown is null or not available.
displayOperatorMinHeight
MATH.MathConstants.displayOperatorMinHeight, または, その定数が利用できない場合, Default fallback constant.
MATH.MathConstants.displayOperatorMinHeight or Default fallback constant if the constant is not available.
axisHeight
MATH.MathConstants.axisHeight, または, その定数が利用できない場合, OS/2.sxHeightの半分.
MATH.MathConstants.axisHeight or half OS/2.sxHeight if the constant is not available.
accentBaseHeight
MATH.MathConstants.accentBaseHeight, または, その定数が利用できない場合, OS/2.sxHeight.
MATH.MathConstants.accentBaseHeight or OS/2.sxHeight if the constant is not available.
subscriptShiftDown
MATH.MathConstants.subscriptShiftDown, または, その定数が利用できない場合, OS/2.ySubscriptYOffset.
MATH.MathConstants.subscriptShiftDown or OS/2.ySubscriptYOffset if the constant is not available.
subscriptTopMax
MATH.MathConstants.subscriptTopMax, または, その定数が利用できない場合, ⅘ × OS/2.sxHeight.
MATH.MathConstants.subscriptTopMax or ⅘ × OS/2.sxHeight if the constant is not available.
subscriptBaselineDropMin
MATH.MathConstants.subscriptBaselineDropMin, または, その定数が利用できない場合, Default fallback constant.
MATH.MathConstants.subscriptBaselineDropMin or Default fallback constant if the constant is not available.
superscriptShiftUp
MATH.MathConstants.superscriptShiftUp, または, その定数が利用できない場合, OS/2.ySuperscriptYOffset.
MATH.MathConstants.superscriptShiftUp or OS/2.ySuperscriptYOffset if the constant is not available.
superscriptShiftUpCramped
MATH.MathConstants.superscriptShiftUpCramped, または, その定数が利用できない場合, Default fallback constant.
MATH.MathConstants.superscriptShiftUpCramped or Default fallback constant if the constant is not available.
superscriptBottomMin
MATH.MathConstants.superscriptBottomMin, または, その定数が利用できない場合, ¼ × OS/2.sxHeight.
MATH.MathConstants.superscriptBottomMin or ¼ × OS/2.sxHeight if the constant is not available.
superscriptBaselineDropMax
MATH.MathConstants.superscriptBaselineDropMax, または, その定数が利用できない場合, Default fallback constant.
MATH.MathConstants.superscriptBaselineDropMax or Default fallback constant if the constant is not available.
subSuperscriptGapMin
MATH.MathConstants.subSuperscriptGapMin, または, その定数が利用できない場合, 4 × default rule thickness.
MATH.MathConstants.subSuperscriptGapMin or 4 × default rule thickness if the constant is not available.
superscriptBottomMaxWithSubscript
MATH.MathConstants.superscriptBottomMaxWithSubscript, または, その定数が利用できない場合, ⅘ × OS/2.sxHeight.
MATH.MathConstants.superscriptBottomMaxWithSubscript or ⅘ × OS/2.sxHeight if the constant is not available.
spaceAfterScript
MATH.MathConstants.spaceAfterScript, または, その定数が利用できない場合, 1/24em.
MATH.MathConstants.spaceAfterScript or 1/24em if the constant is not available.
upperLimitGapMin
MATH.MathConstants.upperLimitGapMin, または, その定数が利用できない場合, Default fallback constant.
MATH.MathConstants.upperLimitGapMin or Default fallback constant if the constant is not available.
upperLimitBaselineRiseMin
MATH.MathConstants.upperLimitBaselineRiseMin, または, その定数が利用できない場合, Default fallback constant.
MATH.MathConstants.upperLimitBaselineRiseMin or Default fallback constant if the constant is not available.
lowerLimitGapMin
MATH.MathConstants.lowerLimitGapMin, または, その定数が利用できない場合, Default fallback constant.
MATH.MathConstants.lowerLimitGapMin or Default fallback constant if the constant is not available.
lowerLimitBaselineDropMin
MATH.MathConstants.lowerLimitBaselineDropMin, または, その定数が利用できない場合, Default fallback constant.
MATH.MathConstants.lowerLimitBaselineDropMin or Default fallback constant if the constant is not available.
stackTopShiftUp
MATH.MathConstants.stackTopShiftUp, または, その定数が利用できない場合, Default fallback constant.
MATH.MathConstants.stackTopShiftUp or Default fallback constant if the constant is not available.
stackTopDisplayStyleShiftUp
MATH.MathConstants.stackTopDisplayStyleShiftUp, または, その定数が利用できない場合, Default fallback constant.
MATH.MathConstants.stackTopDisplayStyleShiftUp or Default fallback constant if the constant is not available.
stackBottomShiftDown
MATH.MathConstants.stackBottomShiftDown, または, その定数が利用できない場合, Default fallback constant.
MATH.MathConstants.stackBottomShiftDown or Default fallback constant if the constant is not available.
stackBottomDisplayStyleShiftDown
MATH.MathConstants.stackBottomDisplayStyleShiftDown, または, その定数が利用できない場合, Default fallback constant
MATH.MathConstants.stackBottomDisplayStyleShiftDown or Default fallback constant if the constant is not available.
stackGapMin
MATH.MathConstants.stackGapMin, または, その定数が利用できない場合, 3 × default rule thickness.
MATH.MathConstants.stackGapMin or 3 × default rule thickness if the constant is not available.
stackDisplayStyleGapMin
MATH.MathConstants.stackDisplayStyleGapMin, または, その定数が利用できない場合, 7 × default rule thickness.
MATH.MathConstants.stackDisplayStyleGapMin or 7 × default rule thickness if the constant is not available.
stretchStackTopShiftUp
MATH.MathConstants.stretchStackTopShiftUp, または, その定数が利用できない場合, Default fallback constant.
MATH.MathConstants.stretchStackTopShiftUp or Default fallback constant if the constant is not available.
stretchStackBottomShiftDown
MATH.MathConstants.stretchStackBottomShiftDown, または, その定数が利用できない場合, Default fallback constant.
MATH.MathConstants.stretchStackBottomShiftDown or Default fallback constant if the constant is not available.
stretchStackGapAboveMin
MATH.MathConstants.stretchStackGapAboveMin, または, その定数が利用できない場合, Default fallback constant.
MATH.MathConstants.stretchStackGapAboveMin or Default fallback constant if the constant is not available.
stretchStackGapBelowMin
MATH.MathConstants.stretchStackGapBelowMin, または, その定数が利用できない場合, Default fallback constant.
MATH.MathConstants.stretchStackGapBelowMin or Default fallback constant if the constant is not available.
fractionNumeratorShiftUp
MATH.MathConstants.fractionNumeratorShiftUp, または, その定数が利用できない場合, Default fallback constant.
MATH.MathConstants.fractionNumeratorShiftUp or Default fallback constant if the constant is not available.
fractionNumeratorDisplayStyleShiftUp
MATH.MathConstants.fractionNumeratorDisplayStyleShiftUp, または, その定数が利用できない場合, Default fallback constant.
MATH.MathConstants.fractionNumeratorDisplayStyleShiftUp or Default fallback constant if the constant is not available.
fractionDenominatorShiftDown
MATH.MathConstants.fractionDenominatorShiftDown, または, その定数が利用できない場合, Default fallback constant.
MATH.MathConstants.fractionDenominatorShiftDown or Default fallback constant if the constant is not available.
fractionDenominatorDisplayStyleShiftDown
MATH.MathConstants.fractionDenominatorDisplayStyleShiftDown, または, その定数が利用できない場合, Default fallback constant.
MATH.MathConstants.fractionDenominatorDisplayStyleShiftDown or Default fallback constant if the constant is not available.
fractionNumeratorGapMin
MATH.MathConstants.fractionNumeratorGapMin, または, その定数が利用できない場合, default rule thickness
MATH.MathConstants.fractionNumeratorGapMin or default rule thickness if the constant is not available.
fractionNumDisplayStyleGapMin
MATH.MathConstants.fractionNumDisplayStyleGapMin, または, その定数が利用できない場合, 3 × default rule thickness.
MATH.MathConstants.fractionNumDisplayStyleGapMin or 3 × default rule thickness if the constant is not available.
fractionRuleThickness
MATH.MathConstants.fractionRuleThickness, または, その定数が利用できない場合, default rule thickness.
MATH.MathConstants.fractionRuleThickness or default rule thickness if the constant is not available.
fractionDenominatorGapMin
MATH.MathConstants.fractionDenominatorGapMin, または, その定数が利用できない場合, default rule thickness.
MATH.MathConstants.fractionDenominatorGapMin or default rule thickness if the constant is not available.
fractionDenomDisplayStyleGapMin
MATH.MathConstants.fractionDenomDisplayStyleGapMin, または, その定数が利用できない場合, 3 × default rule thickness.
MATH.MathConstants.fractionDenomDisplayStyleGapMin or 3 × default rule thickness if the constant is not available.
overbarVerticalGap
MATH.MathConstants.overbarVerticalGap, または, その定数が利用できない場合, 3 × default rule thickness.
MATH.MathConstants.overbarVerticalGap or 3 × default rule thickness if the constant is not available.
overbarExtraAscender
MATH.MathConstants.overbarExtraAscender, または, その定数が利用できない場合, default rule thickness.
MATH.MathConstants.overbarExtraAscender or default rule thickness if the constant is not available.
underbarVerticalGap
MATH.MathConstants.underbarVerticalGap, または, その定数が利用できない場合, 3 × default rule thickness.
MATH.MathConstants.underbarVerticalGap or 3 × default rule thickness if the constant is not available.
underbarExtraDescender
MATH.MathConstants.underbarExtraDescender, または, その定数が利用できない場合, default rule thickness.
MATH.MathConstants.underbarExtraDescender or default rule thickness if the constant is not available.
radicalVerticalGap
MATH.MathConstants.radicalVerticalGap, または, その定数が利用できない場合, 1¼ × default rule thickness.
MATH.MathConstants.radicalVerticalGap or 1¼ × default rule thickness if the constant is not available.
radicalDisplayStyleVerticalGap
MATH.MathConstants.radicalDisplayStyleVerticalGap, または, その定数が利用できない場合, default rule thickness + ¼ OS/2.sxHeight.
MATH.MathConstants.radicalDisplayStyleVerticalGap or default rule thickness + ¼ OS/2.sxHeight if the constant is not available.
radicalRuleThickness
MATH.MathConstants.radicalRuleThickness, または, その定数が利用できない場合, default rule thickness.
MATH.MathConstants.radicalRuleThickness or default rule thickness if the constant is not available.
radicalExtraAscender
MATH.MathConstants.radicalExtraAscender, または, その定数が利用できない場合, default rule thickness.
MATH.MathConstants.radicalExtraAscender or default rule thickness if the constant is not available.
radicalKernBeforeDegree
MATH.MathConstants.radicalKernBeforeDegree, または, その定数が利用できない場合, 5/18em.
MATH.MathConstants.radicalKernBeforeDegree or 5/18em if the constant is not available.
radicalKernAfterDegree
MATH.MathConstants.radicalKernAfterDegree, または, その定数が利用できない場合, −10/18em.
MATH.MathConstants.radicalKernAfterDegree or −10/18em if the constant is not available.
radicalDegreeBottomRaisePercent
MATH.MathConstants.radicalDegreeBottomRaisePercent / 100.0, または, その定数が利用できない場合, 0.6.
MATH.MathConstants.radicalDegreeBottomRaisePercent / 100.0 or 0.6 if the constant is not available.

5.2 字形の情報(MathGlyphInfo)
Glyph information (MathGlyphInfo)

注意
Note
MathTopAccentAttachmentは危険をはらんでいます.
MathTopAccentAttachment is at risk.

可用な最初のフォントに対する字形についてのテーブルがあります.

These are per-glyph tables for the first available font:

MathItalicsCorrectionInfo
イタリック補正の値の下位テーブルMATH.MathGlyphInfo.MathItalicsCorrectionInfo. 要求された字形に対するものがあれば, MATH.MathGlyphInfo.MathItalicsCorrectionInfo.italicsCorrectionの対応する値を使用し, そうでなければ, 0を使用します.
The subtable MATH.MathGlyphInfo.MathItalicsCorrectionInfo of italics correction values. Use the corresponding value in MATH.MathGlyphInfo.MathItalicsCorrectionInfo.italicsCorrection if there is one for the requested glyph or 0 otherwise.
MathTopAccentAttachment
行内軸に沿った, 上側の数学アクセントの位置を決めるときの下位テーブルMATH.MathGlyphInfo.MathTopAccentAttachment. 要求された字形に対するものがあれば, MATH.MathGlyphInfo.MathTopAccentAttachment.topAccentAttachmentの対応する値を使用し, そうでなければ, 字形の提案された幅の半分を使用します.
The subtable MATH.MathGlyphInfo.MathTopAccentAttachment of positioning top math accents along the inline axis. Use the corresponding value in MATH.MathGlyphInfo.MathTopAccentAttachment.topAccentAttachment if there is one for the requested glyph or half the advance width of the glyph otherwise.

5.3 演算子に対する大きさの異体字(MathVariants)
Size variants for operators (MathVariants)

この節は, MATH.MathVariantsテーブルを利用して, どのように任意の大きさの伸長された字形を制御するかについて述べています.

This section describes how to handle stretchy glyphs of arbitrary size using the MATH.MathVariants table.

5.3.1 GlyphAssemblyテーブル
The GlyphAssembly table

この節は, [OPEN-TYPE-MATH-IN-HARFBUZZ]に基づいています. 利便性のために, 次の定義が使用されます.

This section is based on [OPEN-TYPE-MATH-IN-HARFBUZZ]. For convenience, the following definitions are used:

  • ominMATH.MathVariant.minConnectorOverlapです.
    omin is MATH.MathVariant.minConnectorOverlap.
  • GlyphPartRecord.partFlagsfExtenderフラグが設定されていた場合, その場合のみ, GlyphPartRecordエクステンダ(訳注:小文字のディセンダの下部(pの脚の部分)やアセンダの上部(bの縦棒の部分)を標準より伸ばした活字の伸ばした部分)です.
    A GlyphPartRecord is an extender if and only if GlyphPartRecord.partFlags has the fExtender flag set.
  • GlyphAssemblyは, MathVariant.horizGlyphConstructionOffsetsから得られた場合は, 水平方向です. そうでない場合(MathVariant.vertGlyphConstructionOffsetsから得られた場合)は, 鉛直方向です.
    A GlyphAssembly is horizontal if it is obtained from MathVariant.horizGlyphConstructionOffsets. Otherwise it is vertical (and obtained from MathVariant.vertGlyphConstructionOffsets).
  • 与えられたGlyphAssemblyテーブルに対して, NExt(または, NNonExt)は, GlyphAssembly.partRecordsの中のエクステンダ(または, エクステンダでないもの)の数です.
    For a given GlyphAssembly table, NExt (respectively NNonExt) is the number of extenders (respectively non-extenders) in GlyphAssembly.partRecords.
  • 与えられたGlyphAssemblyテーブルに対して, SExt(または, SNonExt)は, GlyphAssembly.partRecordsの中のエクステンダ(または, エクステンダでないもの)に対するGlyphPartRecord.fullAdvanceの和です.
    For a given GlyphAssembly table, SExt (respectively SNonExt) is the sum of GlyphPartRecord.fullAdvance for all extenders (respectively non-extenders) in GlyphAssembly.partRecords.
  • SExt,NonOverlapping = SExtomin NExtは, エクステンダの何ら重なり合ってない部分の最大値の和です.
    SExt,NonOverlapping = SExtomin NExt is the sum of maximum non overlapping parts of extenders.

ユーザーエージェントは, 次の条件が満たされていないとき, GlyphAssemblyを無効な値として取り扱わなければなりません.

User agents must treat the GlyphAssembly as invalid if the following conditions are not satisfied:

  • NExt > 0. そうでなければ, エクステンダを繰り返すことで, 組立字形を組み上げることができません.
    NExt > 0. Otherwise, the assembly cannot be grown by repeating extenders.
  • SExt,NonOverlapping > 0. そうでなければ, エクステンダをつなげることで, 組立字形が組み上がりません.
    SExt,NonOverlapping > 0. Otherwise, the assembly does not grow when joining extenders.
  • GlyphAssembly.partRecordsの各GlyphPartRecordに対して, GlyphPartRecord.startConnectorLengthGlyphPartRecord.endConnectorLengthの値は, 少なくともominでなければなりません. そうでなければ, MathVariant.minConnectorOverlapの条件を満たすことが困難です.
    For each GlyphPartRecord in GlyphAssembly.partRecords, the values of GlyphPartRecord.startConnectorLength and GlyphPartRecord.endConnectorLength must be at least omin. Otherwise, it is not possible to satisfy the condition of MathVariant.minConnectorOverlap.

この仕様書において, 組立字形は, 各エクステンダをr回繰り返し, 各字形の間で同じ重ね合わせの値oを用いることで組み立てられます. そのような組み立てにおける字形の数は, AssemblyGlyphCount(r) = NNonExt + r NExtであり, 一方, 伸長サイズは, AssembySize(o, r) = SNonExt + r SExt − o (AssemblyGlyphCount(r) − 1)です.

In this specification, a glyph assembly is built by repeating each extender r times and using the same overlap value o between each glyph. The number of glyphs in such an assembly is AssemblyGlyphCount(r) = NNonExt + r NExt while the stretch size is AssembySize(o, r) = SNonExt + r SExt − o (AssemblyGlyphCount(r) − 1).

rminは, 少なくともTのサイズの組立字形を得るために必要な, 最小の繰り返しの数で, 例えば, AssembySize(omin, r) ≥ Tとなるような最小のrです. この値は, 0と((T − SNonExt + omin (NNonExt − 1)) / SExt,NonOverlapping)を切り上げた値の間の最大値として定義されます.

rmin is the minimal number of repetitions needed to obtain an assembly of size at least T, i.e. the minimal r such that AssembySize(omin, r) ≥ T. It is defined as the maximum between 0 and the ceiling of ((T − SNonExt + omin (NNonExt − 1)) / SExt,NonOverlapping).

omax,theorical = (AssembySize(0, rmin) − T) / (AssemblyGlyphCount(rmin) − 1)は, 無効な重ね合わせと一緒に組立字形の余分な大きささえ分割することで得られる理論上の重ね合わせです.

omax,theorical = (AssembySize(0, rmin) − T) / (AssemblyGlyphCount(rmin) − 1) is the theorical overlap obtained by splitting evenly the extra size of an assembly built with null overlap.

omaxは, 各エクステンダをrmin回繰り返すことで, 少なくともTの大きさの組立字形を組み立てることができる最大の重ね合わせです. AssemblyGlyphCount(rmin) ≤ 1の場合, 実際の重ね合わせの値とは無関係です. そうでない場合, omaxは次の中の最小のものと定義されます.

omax is the maximum overlap possible to build an assembly of size at least T by repeating each extender rmin times. If AssemblyGlyphCount(rmin) ≤ 1, then the actual overlap value is irrelevant. Otherwise, omax is defined to be the minimum of:

  • omax,theorical.
  • GlyphAssembly.partRecordsの, 最後の要素がエクステンダでないなら, それを除いた全ての要素に対するGlyphPartRecord.startConnectorLength.
    GlyphPartRecord.startConnectorLength for all the entries in GlyphAssembly.partRecords, excluding the last one if it is not an extender.
  • GlyphAssembly.partRecordsの, 最初の要素がエクステンダでないなら, それを除いた全ての要素に対するGlyphPartRecord.endConnectorLength.
    GlyphPartRecord.endConnectorLength for all the entries in GlyphAssembly.partRecords, excluding the first one if it is not an extender.

目標のサイズTに対する組立字形伸長サイズは, AssembySize(omax, rmin)です.

The glyph assembly stretch size for a target size T is AssembySize(omax, rmin).

組立字形幅, 組立字形アセント, 組立字形ディセントは, 次のように定義されます.

The glyph assembly width, glyph assembly ascent and glyph assembly descent are defined as follows:

  • GlyphAssemblyが鉛直方向の場合, 幅は, GlyphAssembly.partRecordsの中の, 全てのGlyphPartRecordに対するID GlyphPartRecord.glyphIDの字形における最大の提案された幅です. アセントは, 与えられた目標のサイズTに対する組立字形伸長サイズで, ディセントは, 0です.
    If GlyphAssembly is vertical, the width is the maximum advance width of the glyphs of ID GlyphPartRecord.glyphID for all the GlyphPartRecord in GlyphAssembly.partRecords, the ascent is the glyph assembly stretch size for a given target size T and the descent is 0.
  • そうでなく, GlyphAssemblyが水平方向の場合, 幅は, 与えられた目標のサイズTに対する組立字形伸長サイズです. 一方, アセント(または, ディセント)は, GlyphAssembly.partRecordsの中の, 全てのGlyphPartRecordに対するID GlyphPartRecord.glyphIDの字形における最大のアセント(または, ディセント)です.
    Otherwise, the GlyphAssembly is horizontal, the width is glyph assembly stretch size for a given target size T while the ascent (respectively descent) is the maximum ascent (respectively descent) of the glyphs of ID GlyphPartRecord.glyphID for all the GlyphPartRecord in GlyphAssembly.partRecords.

組立字形高さは, 組立字形アセント組立字形ディセントの和です.

The glyph assembly height is the sum of the glyph assembly ascent and glyph assembly descent.

注意
Note
鉛直方向(または, 水平方向)の組立字形に対する水平方向(または, 鉛直方向)の尺度は, 目標のサイズTに依存することはありません.
The horizontal (respectively vertical) metrics for a vertical (respectively horizontal) glyph assembly do not depend on the target size T.

組立字形の形成は, 次のアルゴリズムによって実現されます.

The shaping of the glyph assembly is performed with the following algorithm:

  1. rminomaxを算出します.
    Calculate rmin and omax.
  2. (x, y)(0, 0)に, RepetitionCounterを0に, PartIndexを-1に設定します.
    Set (x, y) to (0, 0), RepetitionCounter to 0 and PartIndex to -1.
  3. 次の工程を繰り返します.
    Repeat the following steps:
    1. RepetitionCounterが0の場合
      If RepetitionCounter is 0:
      1. PartIndexを増やします.
        Increment PartIndex.
      2. PartIndexGlyphAssembly.partCountなら終了します.
        If PartIndex is GlyphAssembly.partCount then stop.
      3. そうでないならば, PartGlyphAssembly.partRecords[PartIndex]に設定します. RepetitionCounterを, Partがエクステンダならrminに, そうでなければ0に設定します.
        Otherwise, set Part to GlyphAssembly.partRecords[PartIndex]. Set RepetitionCounter to rmin if Part is an extender and to 1 otherwise.
      • 組立字形が水平方向の場合, ID Part.glyphIDの字形を, その座標(左端, 欧文ベースライン)が位置(x, y)となるように描画します. xx + Part.fullAdvance − omaxに設定します.
        If the glyph assembly is horizontal then draw the glyph of ID Part.glyphID so that its (left, baseline) coordinates are at position (x, y). Set x to x + Part.fullAdvance − omax.
      • そうでない場合(組立字形が鉛直方向の場合), id Part.glyphIDの字形を, その座標(左端, 下端)が位置(x, y)となるように描画します. yy − Part.fullAdvance + omaxに設定します.
        Otherwise (if the glyph assembly is vertical), then draw the glyph of id Part.glyphID so that its (left, bottom) coordinates are at position (x, y). Set y to y − Part.fullAdvance + omax.
    2. RepetitionCounterを減らします.
      Decrement RepetitionCounter.

5.3.2 字形を伸長するアルゴリズム
Algorithms for glyph stretching

ブロック軸に沿って伸長された字形の望ましい行内サイズは, 次のアルゴリズムを使って算出されます.

The preferred inline size of a glyph stretched along the block axis is calculated using the following algorithm:

  1. Sを字形の提案された幅に設定します.
    Set S to the glyph's advance width.
  2. 与えられた字形に対するMathVariants.vertGlyphConstructionOffsetsテーブルの中にMathGlyphConstructionテーブルがある場合,
    If there is a MathGlyphConstruction table in the MathVariants.vertGlyphConstructionOffsets table for the given glyph:
    1. MathGlyphConstruction.mathGlyphVariantRecordの中の各MathGlyphVariantRecordに対して, Sが少なくともid MathGlyphVariantRecord.variantGlyphの字形の提案された幅であることを確実にします.
      For each MathGlyphVariantRecord in MathGlyphConstruction.mathGlyphVariantRecord, ensure that S is at least the advance width of the glyph of id MathGlyphVariantRecord.variantGlyph.
    2. 有効なGlyphAssembly下位テーブルがあるなら, Sが少なくとも組立字形幅であることを確実にします.
      If there is valid GlyphAssembly subtable, then ensure that S is at least the glyph assembly width.
  3. Sを返します.
    Return S.
注意
Note
ブロック軸に沿って伸長された字形の望ましい行内サイズは, その字形に対する全ての可能性のある鉛直方向の構成物の最大の幅を返すでしょう. 実際のところ, 数学フォントは, 鉛直方向の構成物がほとんど一定の幅になるように設計されていて, そのため, 実際の幅は, 過大に評価されたとしても小さくなります.
The preferred inline size of a glyph stretched along the block axis will return the maximum width of all possible vertical constructions for that glyph. In practice, math fonts are designed so that vertical constructions are almost constant width, so possible over-estimation of the actual width is small.

行内(または, ブロック)次元T伸長された字形を形作るアルゴリズムは, 次のとおりです.

The algorithm to shape a stretchy glyph to inline (respectively block) dimension T is the following:

  1. 与えられた字形に対するMathVariants.horizGlyphConstructionOffsetsテーブル(または, MathVariants.vertGlyphConstructionOffsetsテーブル)の中に何らかのMathGlyphConstructionが無いのなら, 失敗の状態を伴って完了します.
    If there is not any MathGlyphConstruction table in the MathVariants.horizGlyphConstructionOffsets table (respectively MathVariants.vertGlyphConstructionOffsets table) for the given glyph then exit with failure.
  2. 字形の提案された幅(または, 高さ)が少なくともTなら, その字形に対する通常の形状と境界ボックスを使用し, また, イタリック補正としてその字形に対するMathItalicsCorrectionInfoを使用し, 成功の状態を伴って完了します.
    If the glyph's advance width (respectively height) is at least T then use normal shaping and bounding box for that glyph, the MathItalicsCorrectionInfo for that glyph as italic correction and exit with success.
  3. MathGlyphConstruction.mathGlyphVariantRecordの中のMathGlyphVariantRecordの一覧を検索します. 1つのMathGlyphVariantRecord.advanceMeasurementが少なくともTなら, MathGlyphVariantRecord.variantGlyphに対する通常の形状と境界ボックスを使用し, また, イタリック補正としてその字形に対するMathItalicsCorrectionInfoを使用し, 成功の状態を伴って完了します.
    Browse the list of MathGlyphVariantRecord in MathGlyphConstruction.mathGlyphVariantRecord. If one MathGlyphVariantRecord.advanceMeasurement is at least T then use normal shaping and bounding box for MathGlyphVariantRecord.variantGlyph, the MathItalicsCorrectionInfo for that glyph as italic correction and exit with success.
  4. 有効なGlyphAssembly下位テーブルがあるなら, 組立字形幅, 組立字形高さ, 組立字形アセント, 組立字形ディセントで与えられる境界ボックスを使用し, また, イタリック補正としてGlyphAssembly.italicsCorrectionの値を使用し, 組立字形を形作ることを実現し, 成功の状態を伴って完了します.
    If there is valid GlyphAssembly subtable then use the bounding box given by glyph assembly width, glyph assembly height, glyph assembly ascent, glyph assembly descent, the value GlyphAssembly.italicsCorrection as italic correction, perform shaping of the glyph assembly and exit with success.
  5. 上のどの伸長の選択肢も目標のサイズTを扱うことができないなら, 試された最後の方法を選択し, 成功の状態を伴って完了します.
    If none of the stretch options above allowed to cover the target size T, then choose last one that was tried and exit with success.
注意
Note
フォントが伸長された構成に対するテーブルを提供していないなら, ユーザーエージェントは, B.4 ユニコードを基にした組立字形で提案されているような, 予備としてのユーザーエージェント独自の内部の構成を使用してもよいです.
If a font does not provide tables for stretchy constructions, User Agents may use their own internal constructions as a fallback such as the one suggested in B.4 Unicode-based Glyph Assemblies.

A. ユーザーエージェントのスタイルシート
User Agent Stylesheet

@namespace url(http://www.w3.org/1998/Math/MathML);

/* Universal rules */
(訳注:"全体に適用する決まり"の意味)
* {
  font-size: math;
  display: block math;
  writing-mode: horizontal-tb !important;
}

/* The <math> element */
(訳注:"<math>要素"の意味)
math {
  direction: ltr;
  text-indent: 0;
  letter-spacing: normal;
  line-height: normal;
  word-spacing: normal;
  font-family: math;
  font-size: inherit;
  font-style: normal;
  font-weight: normal;
  display: inline math;
  math-shift: normal;
  math-style: compact;
  math-depth: 0;
}
math[display="block" i] {
  display: block math;
  math-style: normal;
}
math[display="inline" i] {
  display: inline math;
  math-style: compact;
}

/* <mrow>-like elements */
(訳注:"<mrow>に類似した要素"の意味)
semantics > :not(:first-child) {
  display: none;
}
maction > :not(:first-child) {
  display: none;
}
merror {
  border: 1px solid red;
  background-color: lightYellow;
}
mphantom {
  visibility: hidden;
}

/* Token elements */
(訳注:"素子要素"の意味)
mi {
  text-transform: math-auto;
}

/* Tables */
(訳注:"表"の意味)
mtable {
  display: inline-table;
  math-style: compact;
}
mtr {
  display: table-row;
}
mtd {
  display: table-cell;
  /* Centering inside table cells should rely on box alignment properties.
     See https://github.com/w3c/mathml-core/issues/156 */
  (訳注:"表の要素の中で中央揃えするには, ボックス位置揃えプロパティに頼るべきです.
   https://github.com/w3c/mathml-core/issues/156を参照して下さい."の意味)
  text-align: center;
  padding: 0.5ex 0.4em;
}

/* Fractions */
(訳注:"分数"の意味)
mfrac {
  padding-inline-start: 1px;
  padding-inline-end: 1px;
}
mfrac > * {
  math-depth: auto-add;
  math-style: compact;
}
mfrac > :nth-child(2) {
  math-shift: compact;
}

/* Other rules for scriptlevel, displaystyle and math-shift */
(訳注:"scriptlevel, displaystyle, math-shiftに対する他の決まり"の意味)
mroot > :not(:first-child) {
  math-depth: add(2);
  math-style: compact;
}
mroot, msqrt {
  math-shift: compact;
}
msub > :not(:first-child),
msup > :not(:first-child),
msubsup > :not(:first-child),
mmultiscripts > :not(:first-child),
munder > :not(:first-child),
mover > :not(:first-child),
munderover > :not(:first-child) {
  math-depth: add(1);
  math-style: compact;
}
munder[accentunder="true" i] > :nth-child(2),
mover[accent="true" i] > :nth-child(2),
munderover[accentunder="true" i] > :nth-child(2),
munderover[accent="true" i] > :nth-child(3) {
  font-size: inherit;
}
msub > :nth-child(2),
msubsup > :nth-child(2),
mmultiscripts > :nth-child(even),
mmultiscripts > mprescripts ~ :nth-child(odd),
mover[accent="true" i] > :first-child,
munderover[accent="true" i] > :first-child {
  math-shift: compact;
}
mmultiscripts > mprescripts ~ :nth-child(even) {
  math-shift: inherit;
}

B. 演算子テーブル
Operator Tables

B.1 演算子辞書
Operator Dictionary

注意
Note
この節は, 3.2.4.2 辞書を基にした属性の値や演算子の伸長軸をどのように決めるのかについて述べています. 後で示す簡潔な一覧表は, コンピュータに適したもので, 代替の表現については, B.2 (人間が判読可能な)演算子辞書を参照して下さい.
This section describes how to determine values of 3.2.4.2 Dictionary-based attributes and stretch axis of operators. Compact tables below are suitable for computer manipulation, see B.2 Operator Dictionary (human-readable) for an alternative presentation.

演算子の種類から演算子のプロパティを設定するアルゴリズムは, 次のとおりです.

The algorithm to set the properties of an operator from its category is as follows:

(Content, Form)の組合せから演算子の種類を決定するアルゴリズムは, 次のとおりです.

The algorithm to determine the category of an operator (Content, Form) is as folllows:

  1. Contentが長さを持たないか, 1または2の長さを持たないUTF-16の文字列なら, 種類Defaultを伴って完了します.
    If Content as an UTF-16 string does not have length or 1 or 2 then exit with category Default.
  2. ContentがU+0320–U+03FFの範囲の単独の文字なら, 種類Defaultを伴って完了します. そうでなく, Contentが2つの文字を持つなら次のとおりです.
    If Content is a single character in the range U+0320–U+03FF then exit with category Default. Otherwise, if it has two characters:
    • ContentがU+1EEF0 アラビア数学演算子タトウィー付きハー付きミームに対応するサロゲートペアで, Formpostfixなら, 種類Iを伴って完了します.
      If Content is the surrogate pairs corresponding to U+1EEF0 ARABIC MATHEMATICAL OPERATOR MEEM WITH HAH WITH TATWEEL or U+1EEF1 ARABIC MATHEMATICAL OPERATOR HAH WITH DAL and Form is postfix, exit with category I.
    • 2番目の文字がU+0338 文字に合成する長い斜線またはU+20D2 文字に合成する長い縦線なら, Contentを最初の文字で置き換え, 工程3に進みます.
      If the second character is U+0338 COMBINING LONG SOLIDUS OVERLAY or U+20D2 COMBINING LONG VERTICAL LINE OVERLAY then replace Content with the first character and move to step 3.
    • そうでなく, ContentOperators_2_ascii_charsの中に一覧にされているなら, Contentを"U+0320足すOperators_2_ascii_charsの中でのContentの順番を表す数"であるユニコード文字に置き換え, 工程3に進みます.
      Otherwise, if Content is listed in Operators_2_ascii_chars then replace Content with the Unicode character "U+0320 plus the index of Content in Operators_2_ascii_chars" and move to step 3.
    • いずれでもないなら, 種類Defaultを伴って完了します.
      Otherwise exit with category Default.
  3. Formがinfixで, ContentがU+007C 縦線またはU+223C チルダ演算子の1つに相当するなら, 種類ForceDefaultを伴って完了します. 25の表により提供された(Content, Form)の種類が, 26の表でN/Aのコードを持つなら(すなわち, 種類Lまたは種類Mなら), その種類を伴って完了します. そうでないなら次のとおりです.
    If Form is infix and Content corresponds to one of U+007C VERTICAL LINE or U+223C TILDE OPERATOR then exit with category ForceDefault. If the category of (Content, Form) provided by table Figure 25 has N/A encoding in table Figure 26 (namely if it has category L or M), then exit with that category. Otherwise:
    • Keyを, ContentがU+0000–U+03FFの範囲ならContentに, U+2000–U+2BFFの範囲ならContent − 0x1C00に設定します. そうでなければ, 種類Defaultを伴って完了します.
      Set Key to Content if it is in range U+0000–U+03FF; or to Content − 0x1C00 if it is in range U+2000–U+2BFF. Otherwise, exit with category Default.
    • Forminfix, prefix, postfixならば, Keyにそれぞれ0x0000, 0x1000, 0x2000を足します.
      Add 0x0000, 0x1000, 0x2000 to Key according to whether Form is infix, prefix, postfix respectively.
    • Keyを多くて0x2FFFと仮定します.
      Assert: Key is at most 0x2FFF.
    • 登録データEntry27の中で, Entry % 0x4000(訳注:余りを求める演算子%)Keyと等しくなるものを探します. 合致するものが見つかったなら, 26の中でEntryのコード / 0x1000に対応する種類を返します. そうでなければ種類Defaultを返します.
      Search an Entry in table Figure 27 such that Entry % 0x4000 is equal to Key. If one is found then return the category corresponding to encoding Entry / 0x1000 in Figure 26. Otherwise, return category Default.
特別な一覧
Special Table
登録データ
Entries
Operators_2_ascii_chars18個の登録データ(2文字のASCII文字列): '!!', '!=', '&&', '**', '*=', '++', '+=', '--', '-=', '->', '//', '/=', ':=', '<=', '<>', '==', '>=', '||',
18 entries (2-characters ASCII strings)
Operators_fence61個の登録データ(16個のユニコードの範囲): [U+0028–U+0029], {U+005B}, {U+005D}, [U+007B–U+007D], {U+0331}, {U+2016}, [U+2018–U+2019], [U+201C–U+201D], [U+2308–U+230B], [U+2329–U+232A], [U+2772–U+2773], [U+27E6–U+27EF], {U+2980}, [U+2983–U+2999], [U+29D8–U+29DB], [U+29FC–U+29FD],
61 entries (16 Unicode ranges)
Operators_separator3個の登録データ: U+002C, U+003B, U+2063,
3 entries
24 演算子辞書に対する特別な一覧.
全体の大きさ: 82個の登録データ, 90バイト.
(想定している文字はUTF-16で1バイトの長さ)

Figure 24 Special tables for the operator dictionary.
Total size: 82 entries, 90 bytes
(assuming characters are UTF-16 and 1-byte range lengths).
(Content, Form)の組合せ
(Content, Form) keys
種類
Category
infix形式の313個の登録データ(35個のユニコードの範囲): [U+2190–U+2195], [U+219A–U+21AE], [U+21B0–U+21B5], {U+21B9}, [U+21BC–U+21D5], [U+21DA–U+21F0], [U+21F3–U+21FF], {U+2794}, {U+2799}, [U+279B–U+27A1], [U+27A5–U+27A6], [U+27A8–U+27AF], {U+27B1}, {U+27B3}, {U+27B5}, {U+27B8}, [U+27BA–U+27BE], [U+27F0–U+27F1], [U+27F4–U+27FF], [U+2900–U+2920], [U+2934–U+2937], [U+2942–U+2975], [U+297C–U+297F], [U+2B04–U+2B07], [U+2B0C–U+2B11], [U+2B30–U+2B3E], [U+2B40–U+2B4C], [U+2B60–U+2B65], [U+2B6A–U+2B6D], [U+2B70–U+2B73], [U+2B7A–U+2B7D], [U+2B80–U+2B87], {U+2B95}, [U+2BA0–U+2BAF], {U+2BB8},
313 entries (35 Unicode ranges) in infix form
A
infix形式の109個の登録データ(32個のユニコードの範囲): {U+002B}, {U+002D}, {U+002F}, {U+00B1}, {U+00F7}, {U+0322}, {U+2044}, [U+2212–U+2216], [U+2227–U+222A], {U+2236}, {U+2238}, [U+228C–U+228E], [U+2293–U+2296], {U+2298}, [U+229D–U+229F], [U+22BB–U+22BD], [U+22CE–U+22CF], [U+22D2–U+22D3], [U+2795–U+2797], {U+29B8}, {U+29BC}, [U+29C4–U+29C5], [U+29F5–U+29FB], [U+2A1F–U+2A2E], [U+2A38–U+2A3A], {U+2A3E}, [U+2A40–U+2A4F], [U+2A51–U+2A63], {U+2ADB}, {U+2AF6}, {U+2AFB}, {U+2AFD},
109 entries (32 Unicode ranges) in infix form
B
infix形式の64個の登録データ(33個のユニコードの範囲): {U+0025}, {U+002A}, {U+002E}, [U+003F–U+0040], {U+005E}, {U+00B7}, {U+00D7}, {U+0323}, {U+032E}, {U+2022}, {U+2043}, [U+2217–U+2219], {U+2240}, {U+2297}, [U+2299–U+229B], [U+22A0–U+22A1], {U+22BA}, [U+22C4–U+22C7], [U+22C9–U+22CC], [U+2305–U+2306], {U+27CB}, {U+27CD}, [U+29C6–U+29C8], [U+29D4–U+29D7], {U+29E2}, [U+2A1D–U+2A1E], [U+2A2F–U+2A37], [U+2A3B–U+2A3D], {U+2A3F}, {U+2A50}, [U+2A64–U+2A65], [U+2ADC–U+2ADD], {U+2AFE},
64 entries (33 Unicode ranges) in infix form
C
prefix形式の52個の登録データ(22個のユニコードの範囲): {U+0021}, {U+002B}, {U+002D}, {U+00AC}, {U+00B1}, {U+0331}, {U+2018}, {U+201C}, [U+2200–U+2201], [U+2203–U+2204], {U+2207}, [U+2212–U+2213], [U+221F–U+2222], [U+2234–U+2235], {U+223C}, [U+22BE–U+22BF], {U+2310}, {U+2319}, [U+2795–U+2796], {U+27C0}, [U+299B–U+29AF], [U+2AEC–U+2AED],
52 entries (22 Unicode ranges) in prefix form
D
postfix形式の40個の登録データ(21個のユニコードの範囲): [U+0021–U+0022], [U+0025–U+0027], {U+0060}, {U+00A8}, {U+00B0}, [U+00B2–U+00B4], [U+00B8–U+00B9], [U+02CA–U+02CB], [U+02D8–U+02DA], {U+02DD}, {U+0311}, {U+0320}, {U+0325}, {U+0327}, {U+0331}, [U+2019–U+201B], [U+201D–U+201F], [U+2032–U+2037], {U+2057}, [U+20DB–U+20DC], {U+23CD},
40 entries (21 Unicode ranges) in postfix form
E
prefix形式の30個の登録データ: U+0028, U+005B, U+007B, U+007C, U+2016, U+2308, U+230A, U+2329, U+2772, U+27E6, U+27E8, U+27EA, U+27EC, U+27EE, U+2980, U+2983, U+2985, U+2987, U+2989, U+298B, U+298D, U+298F, U+2991, U+2993, U+2995, U+2997, U+2999, U+29D8, U+29DA, U+29FC,
30 entries in prefix form
F
postfix形式の30個の登録データ: U+0029, U+005D, U+007C, U+007D, U+2016, U+2309, U+230B, U+232A, U+2773, U+27E7, U+27E9, U+27EB, U+27ED, U+27EF, U+2980, U+2984, U+2986, U+2988, U+298A, U+298C, U+298E, U+2990, U+2992, U+2994, U+2996, U+2998, U+2999, U+29D9, U+29DB, U+29FD,
30 entries in postfix form
G
prefix形式の27個の登録データ(2個のユニコードの範囲): [U+222B–U+2233], [U+2A0B–U+2A1C],
27 entries (2 Unicode ranges) in prefix form
H
postfix形式の22の登録データ(13個のユニコードの範囲): [U+005E–U+005F], {U+007E}, {U+00AF}, [U+02C6–U+02C7], {U+02C9}, {U+02CD}, {U+02DC}, {U+02F7}, {U+0302}, {U+203E}, [U+2322–U+2323], [U+23B4–U+23B5], [U+23DC–U+23E1],
22 entries (13 Unicode ranges) in postfix form
I
prefix形式の22個の登録データ(6個のユニコードの範囲): [U+220F–U+2211], [U+22C0–U+22C3], [U+2A00–U+2A0A], [U+2A1D–U+2A1E], {U+2AFC}, {U+2AFF},
22 entries (6 Unicode ranges) in prefix form
J
infix形式の7個の登録データ(4個のユニコードの範囲): {U+005C}, {U+005F}, [U+2061–U+2064], {U+2206},
7 entries (4 Unicode ranges) in infix form
K
prefix形式の6個の登録データ(3個のユニコードの範囲): [U+2145–U+2146], {U+2202}, [U+221A–U+221C],
6 entries (3 Unicode ranges) in prefix form
L
infix形式の3個の登録データ: U+002C, U+003A, U+003B,
3 entries in infix form
M
25 演算子(Content, Form)と種類の対応.
全体の大きさ: 725個の登録データ, 639バイト
(想定している文字はUTF-16で1バイトの長さ).

Figure 25 Mapping from operator (Content, Form) to a category.
Total size: 725 entries, 639 bytes
(assuming characters are UTF-16 and 1-byte range lengths).
種類
Category
Formコード
Encoding
lspacerspaceプロパティ
properties
DefaultN/AN/A0.2777777777777778em0.2777777777777778emN/A
ForceDefaultN/AN/A0.2777777777777778em0.2777777777777778emN/A
Ainfix0x00.2777777777777778em0.2777777777777778emstretchy
Binfix0x40.2222222222222222em0.2222222222222222emN/A
Cinfix0x80.16666666666666666em0.16666666666666666emN/A
Dprefix0x100N/A
Epostfix0x200N/A
Fprefix0x500stretchy symmetric
Gpostfix0x600stretchy symmetric
Hprefix0x90.16666666666666666em0.16666666666666666emsymmetric largeop
Ipostfix0xA00stretchy
Jprefix0xD0.16666666666666666em0.16666666666666666emsymmetric largeop movablelimits
Kinfix0xC00N/A
LprefixN/A0.16666666666666666em0N/A
MinfixN/A00.16666666666666666emN/A
26 各種類に対する演算子の値.
3番目の列は, 種類に対応する4ビットのコードを提供,
最後の重要な2ビットが, 形式infix (0), prefix (1), postfix (2)をコード化.

Figure 26 Operators values for each category.
The third column provides a 4-bit encoding of the categories
where the 2 least significant bits encode the form infix (0), prefix (1) and postfix (2).
716個の登録データ(最大16の長さの236個の範囲): {0x8025}, {0x802A}, {0x402B}, {0x402D}, {0x802E}, {0x402F}, [0x803F–0x8040], {0xC05C}, {0x805E}, {0xC05F}, {0x40B1}, {0x80B7}, {0x80D7}, {0x40F7}, {0x4322}, {0x8323}, {0x832E}, {0x8422}, {0x8443}, {0x4444}, [0xC461–0xC464], [0x0590–0x0595], [0x059A–0x05A9], [0x05AA–0x05AE], [0x05B0–0x05B5], {0x05B9}, [0x05BC–0x05CB], [0x05CC–0x05D5], [0x05DA–0x05E9], [0x05EA–0x05F0], [0x05F3–0x05FF], {0xC606}, [0x4612–0x4616], [0x8617–0x8619], [0x4627–0x462A], {0x4636}, {0x4638}, {0x8640}, [0x468C–0x468E], [0x4693–0x4696], {0x8697}, {0x4698}, [0x8699–0x869B], [0x469D–0x469F], [0x86A0–0x86A1], {0x86BA}, [0x46BB–0x46BD], [0x86C4–0x86C7], [0x86C9–0x86CC], [0x46CE–0x46CF], [0x46D2–0x46D3], [0x8705–0x8706], {0x0B94}, [0x4B95–0x4B97], {0x0B99}, [0x0B9B–0x0BA1], [0x0BA5–0x0BA6], [0x0BA8–0x0BAF], {0x0BB1}, {0x0BB3}, {0x0BB5}, {0x0BB8}, [0x0BBA–0x0BBE], {0x8BCB}, {0x8BCD}, [0x0BF0–0x0BF1], [0x0BF4–0x0BFF], [0x0D00–0x0D0F], [0x0D10–0x0D1F], {0x0D20}, [0x0D34–0x0D37], [0x0D42–0x0D51], [0x0D52–0x0D61], [0x0D62–0x0D71], [0x0D72–0x0D75], [0x0D7C–0x0D7F], {0x4DB8}, {0x4DBC}, [0x4DC4–0x4DC5], [0x8DC6–0x8DC8], [0x8DD4–0x8DD7], {0x8DE2}, [0x4DF5–0x4DFB], [0x8E1D–0x8E1E], [0x4E1F–0x4E2E], [0x8E2F–0x8E37], [0x4E38–0x4E3A], [0x8E3B–0x8E3D], {0x4E3E}, {0x8E3F}, [0x4E40–0x4E4F], {0x8E50}, [0x4E51–0x4E60], [0x4E61–0x4E63], [0x8E64–0x8E65], {0x4EDB}, [0x8EDC–0x8EDD], {0x4EF6}, {0x4EFB}, {0x4EFD}, {0x8EFE}, [0x0F04–0x0F07], [0x0F0C–0x0F11], [0x0F30–0x0F3E], [0x0F40–0x0F4C], [0x0F60–0x0F65], [0x0F6A–0x0F6D], [0x0F70–0x0F73], [0x0F7A–0x0F7D], [0x0F80–0x0F87], {0x0F95}, [0x0FA0–0x0FAF], {0x0FB8}, {0x1021}, {0x5028}, {0x102B}, {0x102D}, {0x505B}, [0x507B–0x507C], {0x10AC}, {0x10B1}, {0x1331}, {0x5416}, {0x1418}, {0x141C}, [0x1600–0x1601], [0x1603–0x1604], {0x1607}, [0xD60F–0xD611], [0x1612–0x1613], [0x161F–0x1622], [0x962B–0x9633], [0x1634–0x1635], {0x163C}, [0x16BE–0x16BF], [0xD6C0–0xD6C3], {0x5708}, {0x570A}, {0x1710}, {0x1719}, {0x5729}, {0x5B72}, [0x1B95–0x1B96], {0x1BC0}, {0x5BE6}, {0x5BE8}, {0x5BEA}, {0x5BEC}, {0x5BEE}, {0x5D80}, {0x5D83}, {0x5D85}, {0x5D87}, {0x5D89}, {0x5D8B}, {0x5D8D}, {0x5D8F}, {0x5D91}, {0x5D93}, {0x5D95}, {0x5D97}, {0x5D99}, [0x1D9B–0x1DAA], [0x1DAB–0x1DAF], {0x5DD8}, {0x5DDA}, {0x5DFC}, [0xDE00–0xDE0A], [0x9E0B–0x9E1A], [0x9E1B–0x9E1C], [0xDE1D–0xDE1E], [0x1EEC–0x1EED], {0xDEFC}, {0xDEFF}, [0x2021–0x2022], [0x2025–0x2027], {0x6029}, {0x605D}, [0xA05E–0xA05F], {0x2060}, [0x607C–0x607D], {0xA07E}, {0x20A8}, {0xA0AF}, {0x20B0}, [0x20B2–0x20B4], [0x20B8–0x20B9], [0xA2C6–0xA2C7], {0xA2C9}, [0x22CA–0x22CB], {0xA2CD}, [0x22D8–0x22DA], {0xA2DC}, {0x22DD}, {0xA2F7}, {0xA302}, {0x2311}, {0x2320}, {0x2325}, {0x2327}, {0x2331}, {0x6416}, [0x2419–0x241B], [0x241D–0x241F], [0x2432–0x2437], {0xA43E}, {0x2457}, [0x24DB–0x24DC], {0x6709}, {0x670B}, [0xA722–0xA723], {0x672A}, [0xA7B4–0xA7B5], {0x27CD}, [0xA7DC–0xA7E1], {0x6B73}, {0x6BE7}, {0x6BE9}, {0x6BEB}, {0x6BED}, {0x6BEF}, {0x6D80}, {0x6D84}, {0x6D86}, {0x6D88}, {0x6D8A}, {0x6D8C}, {0x6D8E}, {0x6D90}, {0x6D92}, {0x6D94}, {0x6D96}, [0x6D98–0x6D99], {0x6DD9}, {0x6DDB}, {0x6DFD},
716 entries (236 ranges of length at most 16)
27 Keyで並び替えた最も範囲が大きい種類に対する登録データの一覧.
KeyEntry % 0x4000で, 種類のコードはEntry / 0x1000.
全体の大きさ: 716の登録データ, 590バイト
(範囲の大きさは4ビットを想定).

Figure 27 List of entries for the largest categories, sorted by key.
Key is Entry % 0x4000, category encoding is Entry / 0x1000.
Total size: 716 entries, 590 bytes
(assuming 4 bits for range lengths).
注意
Note
  • 2527の表は, 多くの連続したユニコードブロックの存在を活かした, 範囲としてコード化されたものです.
    Tables of Figure 25 and Figure 27 are encoded as ranges to take profit of the presence of many contiguous Unicode blocks.
  • それらの表から速やかに登録データを見つけるために, 範囲の長さを別途確認したうえで, 範囲の始まりを二分探索することも可能です.
    To quickly find an entry in these tables, one can still perform a binary search over the range starts, followed by an extra check on the range length.
  • 対数は下に凸なことから, 25のそれぞれの表より, 27の完全なな表を二分探索した方が効率的です.
    Since log is concave, it is more efficient to perform one binary search on the whole table of Figure 27 rather than on each large subtable of Figure 25.

ユニコード文字cが次の一覧に属しているなら, その固有の伸長軸行内軸です. そうでなければ, cの伸長軸はブロック軸です.

The intrinsic stretch axis a Unicode character c is inline if it belongs to the list below. Otherwise, the intrinsic stretch axis of c is block.

U+003D, U+005E, U+005F, U+007E, U+00AF, U+02C6, U+02C7, U+02C9, U+02CD, U+02DC, U+02F7, U+0302, U+0332, U+203E, U+20D0, U+20D1, U+20D6, U+20D7, U+20E1, U+2190, U+2192, U+2194, U+2198, U+2199, U+219A, U+219B, U+219C, U+219D, U+219E, U+21A0, U+21A2, U+21A3, U+21A4, U+21A6, U+21A9, U+21AA, U+21AB, U+21AC, U+21AD, U+21AE, U+21B4, U+21B9, U+21BC, U+21BD, U+21C0, U+21C1, U+21C4, U+21C6, U+21C7, U+21C9, U+21CB, U+21CC, U+21CD, U+21CE, U+21CF, U+21D0, U+21D2, U+21D4, U+21DA, U+21DB, U+21DC, U+21DD, U+21E0, U+21E2, U+21E4, U+21E5, U+21E6, U+21E8, U+21F0, U+21F4, U+21F6, U+21F7, U+21F8, U+21F9, U+21FA, U+21FB, U+21FC, U+21FD, U+21FE, U+21FF, U+2322, U+2323, U+23B4, U+23B5, U+23DC, U+23DD, U+23DE, U+23DF, U+23E0, U+23E1, U+2500, U+2794, U+2799, U+279B, U+279C, U+279D, U+279E, U+279F, U+27A0, U+27A1, U+27A5, U+27A6, U+27A8, U+27A9, U+27AA, U+27AB, U+27AC, U+27AD, U+27AE, U+27AF, U+27B1, U+27B3, U+27B5, U+27B8, U+27BA, U+27BB, U+27BC, U+27BD, U+27BE, U+27F4, U+27F5, U+27F6, U+27F7, U+27F8, U+27F9, U+27FA, U+27FB, U+27FC, U+27FD, U+27FE, U+27FF, U+2900, U+2901, U+2902, U+2903, U+2904, U+2905, U+2906, U+2907, U+290C, U+290D, U+290E, U+290F, U+2910, U+2911, U+2914, U+2915, U+2916, U+2917, U+2918, U+2919, U+291A, U+291B, U+291C, U+291D, U+291E, U+291F, U+2920, U+2942, U+2943, U+2944, U+2945, U+2946, U+2947, U+2948, U+294A, U+294B, U+294E, U+2950, U+2952, U+2953, U+2956, U+2957, U+295A, U+295B, U+295E, U+295F, U+2962, U+2964, U+2966, U+2967, U+2968, U+2969, U+296A, U+296B, U+296C, U+296D, U+2970, U+2971, U+2972, U+2973, U+2974, U+2975, U+297C, U+297D, U+2B04, U+2B05, U+2B0C, U+2B30, U+2B31, U+2B32, U+2B33, U+2B34, U+2B35, U+2B36, U+2B37, U+2B38, U+2B39, U+2B3A, U+2B3B, U+2B3C, U+2B3D, U+2B3E, U+2B40, U+2B41, U+2B42, U+2B43, U+2B44, U+2B45, U+2B46, U+2B47, U+2B48, U+2B49, U+2B4A, U+2B4B, U+2B4C, U+2B60, U+2B62, U+2B64, U+2B6A, U+2B6C, U+2B70, U+2B72, U+2B7A, U+2B7C, U+2B80, U+2B82, U+2B84, U+2B86, U+2B95, U+FE35, U+FE36, U+FE37, U+FE38, U+1EEF0, U+1EEF1,
28 行内軸を伸長軸に持つ演算子に対するユニコードのコードポイントを順番に並び替えた一覧.
全体の大きさ: 246個の登録データ, 492バイト(基本多言語面の登録データでない全てのデータが16ビットであると想定).

Figure 28 Sorted list of Unicode code points corresponding to operators with inline stretch axis.
Total size: 246 entries, 492 bytes (assuming 16 bits for all but the non-BMP entries).
注意
Note
固有の伸長軸は, 演算子辞書にブール値のプロパティとして含まれることが可能でしょう. ただし, その軸は形式に依存せず, とてもわずかな演算子のみが行内軸に沿って伸長されることから, その軸は, 別個の並び替えられた配列として実装された方がよいでしょう. 各登録データは, U+1EEF0 アラビア数学用演算子タトウィー付きハー付きミームとU+1EEF1 アラビア数学用演算子ダール付きハーが別個に検証されるなら, 16バイトでコード化できます.
The intrinsic stretch axis could be included as a boolean property of the operator dictionary. But since it does not depend on the form and since very few operators can stretch along the inline axis, it is better implemented as a separate sorted array. Each entry can be encoded with 16 bytes if U+1EEF0 ARABIC MATHEMATICAL OPERATOR MEEM WITH HAH WITH TATWEEL and U+1EEF1 ARABIC MATHEMATICAL OPERATOR HAH WITH DAL are tested separately.

B.2 (人間が判読可能な)演算子辞書
Operator Dictionary (human-readable)

この節は規範ではありません.

This section is non-normative.

次に示す辞書は, B.1 演算子辞書の人間が判読可能なヴァージョンを提供しています. この辞書をどのように利用するか, 辞書に索引を付けるのにContentFormの値をどのように決めるのかについての説明は, 3.2.4.2 辞書を基にした属性を参照して下さい.

The following dictionary provides a human-readable version of B.1 Operator Dictionary. Please refer to 3.2.4.2 Dictionary-based attributes for explanation about how to use this dictionary and how to determine the values Content and Form indexing together the dictionary.

rspacelspaceの値は, 対応する列の中で示されています. stretchy, symmetric, largeop, movablelimitsが"プロパティ"の列に一覧にされている場合, その属性の値はtrueです.

The values for rspace and lspace are indicated in the corresponding columns. The values of stretchy, symmetric, largeop, movablelimits are true if they are listed in the "properties" column.

Content伸長軸
Stretch Axis
formlspacerspaceプロパティ
properties
< U+003Cブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
= U+003D行内軸
inline
infix0.2777777777777778em0.2777777777777778emN/A
> U+003Eブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
| U+007Cブロック軸
block
infix0.2777777777777778em0.2777777777777778emfence
↖ U+2196ブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
↗ U+2197ブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
↘ U+2198行内軸
inline
infix0.2777777777777778em0.2777777777777778emN/A
↙ U+2199行内軸
inline
infix0.2777777777777778em0.2777777777777778emN/A
↯ U+21AFブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
↶ U+21B6ブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
↷ U+21B7ブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
↸ U+21B8ブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
↺ U+21BAブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
↻ U+21BBブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⇖ U+21D6ブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⇗ U+21D7ブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⇘ U+21D8ブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⇙ U+21D9ブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⇱ U+21F1ブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⇲ U+21F2ブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
∈ U+2208ブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
∉ U+2209ブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
∊ U+220Aブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
∋ U+220Bブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
∌ U+220Cブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
∍ U+220Dブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
∝ U+221Dブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
∣ U+2223ブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
∤ U+2224ブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
∥ U+2225ブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
∦ U+2226ブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
∷ U+2237ブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
∹ U+2239ブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
∺ U+223Aブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
∻ U+223Bブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
∼ U+223Cブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
∽ U+223Dブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
∾ U+223Eブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
≁ U+2241ブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
≂ U+2242ブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
≃ U+2243ブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
≄ U+2244ブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
≅ U+2245ブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
≆ U+2246ブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
≇ U+2247ブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
≈ U+2248ブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
≉ U+2249ブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
≊ U+224Aブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
≋ U+224Bブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
≌ U+224Cブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
≍ U+224Dブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
≎ U+224Eブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
≏ U+224Fブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
≐ U+2250ブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
≑ U+2251ブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
≒ U+2252ブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
≓ U+2253ブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
≔ U+2254ブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
≕ U+2255ブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
≖ U+2256ブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
≗ U+2257ブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
≘ U+2258ブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
≙ U+2259ブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
≚ U+225Aブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
≛ U+225Bブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
≜ U+225Cブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
≝ U+225Dブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
≞ U+225Eブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
≟ U+225Fブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
≠ U+2260ブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
≡ U+2261ブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
≢ U+2262ブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
≣ U+2263ブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
≤ U+2264ブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
≥ U+2265ブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
≦ U+2266ブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
≧ U+2267ブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
≨ U+2268ブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
≩ U+2269ブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
≪ U+226Aブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
≫ U+226Bブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
≬ U+226Cブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
≭ U+226Dブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
≮ U+226Eブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
≯ U+226Fブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
≰ U+2270ブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
≱ U+2271ブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
≲ U+2272ブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
≳ U+2273ブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
≴ U+2274ブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
≵ U+2275ブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
≶ U+2276ブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
≷ U+2277ブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
≸ U+2278ブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
≹ U+2279ブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
≺ U+227Aブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
≻ U+227Bブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
≼ U+227Cブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
≽ U+227Dブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
≾ U+227Eブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
≿ U+227Fブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⊀ U+2280ブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⊁ U+2281ブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⊂ U+2282ブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⊃ U+2283ブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⊄ U+2284ブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⊅ U+2285ブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⊆ U+2286ブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⊇ U+2287ブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⊈ U+2288ブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⊉ U+2289ブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⊊ U+228Aブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⊋ U+228Bブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⊏ U+228Fブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⊐ U+2290ブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⊑ U+2291ブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⊒ U+2292ブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⊜ U+229Cブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⊢ U+22A2ブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⊣ U+22A3ブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⊦ U+22A6ブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⊧ U+22A7ブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⊨ U+22A8ブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⊩ U+22A9ブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⊪ U+22AAブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⊫ U+22ABブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⊬ U+22ACブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⊭ U+22ADブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⊮ U+22AEブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⊯ U+22AFブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⊰ U+22B0ブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⊱ U+22B1ブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⊲ U+22B2ブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⊳ U+22B3ブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⊴ U+22B4ブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⊵ U+22B5ブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⊶ U+22B6ブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⊷ U+22B7ブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⊸ U+22B8ブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⋈ U+22C8ブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⋍ U+22CDブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⋐ U+22D0ブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⋑ U+22D1ブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⋔ U+22D4ブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⋕ U+22D5ブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⋖ U+22D6ブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⋗ U+22D7ブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⋘ U+22D8ブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⋙ U+22D9ブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⋚ U+22DAブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⋛ U+22DBブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⋜ U+22DCブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⋝ U+22DDブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⋞ U+22DEブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⋟ U+22DFブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⋠ U+22E0ブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⋡ U+22E1ブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⋢ U+22E2ブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⋣ U+22E3ブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⋤ U+22E4ブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⋥ U+22E5ブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⋦ U+22E6ブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⋧ U+22E7ブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⋨ U+22E8ブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⋩ U+22E9ブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⋪ U+22EAブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⋫ U+22EBブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⋬ U+22ECブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⋭ U+22EDブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⋲ U+22F2ブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⋳ U+22F3ブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⋴ U+22F4ブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⋵ U+22F5ブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⋶ U+22F6ブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⋷ U+22F7ブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⋸ U+22F8ブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⋹ U+22F9ブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⋺ U+22FAブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⋻ U+22FBブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⋼ U+22FCブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⋽ U+22FDブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⋾ U+22FEブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⋿ U+22FFブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⌁ U+2301ブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⍼ U+237Cブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⎋ U+238Bブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
➘ U+2798ブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
➚ U+279Aブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
➧ U+27A7ブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
➲ U+27B2ブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
➴ U+27B4ブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
➶ U+27B6ブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
➷ U+27B7ブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
➹ U+27B9ブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⟂ U+27C2ブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⟲ U+27F2ブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⟳ U+27F3ブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⤡ U+2921ブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⤢ U+2922ブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⤣ U+2923ブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⤤ U+2924ブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⤥ U+2925ブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⤦ U+2926ブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⤧ U+2927ブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⤨ U+2928ブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⤩ U+2929ブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⤪ U+292Aブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⤫ U+292Bブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⤬ U+292Cブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⤭ U+292Dブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⤮ U+292Eブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⤯ U+292Fブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⤰ U+2930ブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⤱ U+2931ブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⤲ U+2932ブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⤳ U+2933ブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⤸ U+2938ブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⤹ U+2939ブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⤺ U+293Aブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⤻ U+293Bブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⤼ U+293Cブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⤽ U+293Dブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⤾ U+293Eブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⤿ U+293Fブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⥀ U+2940ブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⥁ U+2941ブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⥶ U+2976ブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⥷ U+2977ブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⥸ U+2978ブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⥹ U+2979ブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⥺ U+297Aブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⥻ U+297Bブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⦁ U+2981ブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⦂ U+2982ブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⦶ U+29B6ブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⦷ U+29B7ブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⦹ U+29B9ブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⧀ U+29C0ブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⧁ U+29C1ブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⧎ U+29CEブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⧏ U+29CFブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⧐ U+29D0ブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⧑ U+29D1ブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⧒ U+29D2ブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⧓ U+29D3ブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⧟ U+29DFブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⧡ U+29E1ブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⧣ U+29E3ブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⧤ U+29E4ブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⧥ U+29E5ブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⧦ U+29E6ブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⧴ U+29F4ブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⩦ U+2A66ブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⩧ U+2A67ブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⩨ U+2A68ブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⩩ U+2A69ブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⩪ U+2A6Aブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⩫ U+2A6Bブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⩬ U+2A6Cブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⩭ U+2A6Dブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⩮ U+2A6Eブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⩯ U+2A6Fブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⩰ U+2A70ブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⩱ U+2A71ブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⩲ U+2A72ブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⩳ U+2A73ブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⩴ U+2A74ブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⩵ U+2A75ブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⩶ U+2A76ブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⩷ U+2A77ブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⩸ U+2A78ブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⩹ U+2A79ブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⩺ U+2A7Aブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⩻ U+2A7Bブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⩼ U+2A7Cブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⩽ U+2A7Dブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⩾ U+2A7Eブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⩿ U+2A7Fブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⪀ U+2A80ブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⪁ U+2A81ブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⪂ U+2A82ブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⪃ U+2A83ブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⪄ U+2A84ブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⪅ U+2A85ブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⪆ U+2A86ブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⪇ U+2A87ブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⪈ U+2A88ブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⪉ U+2A89ブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⪊ U+2A8Aブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⪋ U+2A8Bブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⪌ U+2A8Cブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⪍ U+2A8Dブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⪎ U+2A8Eブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⪏ U+2A8Fブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⪐ U+2A90ブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⪑ U+2A91ブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⪒ U+2A92ブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⪓ U+2A93ブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⪔ U+2A94ブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⪕ U+2A95ブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⪖ U+2A96ブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⪗ U+2A97ブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⪘ U+2A98ブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⪙ U+2A99ブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⪚ U+2A9Aブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⪛ U+2A9Bブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⪜ U+2A9Cブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⪝ U+2A9Dブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⪞ U+2A9Eブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⪟ U+2A9Fブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⪠ U+2AA0ブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⪡ U+2AA1ブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⪢ U+2AA2ブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⪣ U+2AA3ブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⪤ U+2AA4ブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⪥ U+2AA5ブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⪦ U+2AA6ブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⪧ U+2AA7ブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⪨ U+2AA8ブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⪩ U+2AA9ブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⪪ U+2AAAブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⪫ U+2AABブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⪬ U+2AACブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⪭ U+2AADブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⪮ U+2AAEブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⪯ U+2AAFブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⪰ U+2AB0ブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⪱ U+2AB1ブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⪲ U+2AB2ブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⪳ U+2AB3ブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⪴ U+2AB4ブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⪵ U+2AB5ブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⪶ U+2AB6ブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⪷ U+2AB7ブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⪸ U+2AB8ブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⪹ U+2AB9ブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⪺ U+2ABAブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⪻ U+2ABBブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⪼ U+2ABCブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⪽ U+2ABDブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⪾ U+2ABEブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⪿ U+2ABFブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⫀ U+2AC0ブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⫁ U+2AC1ブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⫂ U+2AC2ブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⫃ U+2AC3ブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⫄ U+2AC4ブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⫅ U+2AC5ブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⫆ U+2AC6ブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⫇ U+2AC7ブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⫈ U+2AC8ブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⫉ U+2AC9ブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⫊ U+2ACAブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⫋ U+2ACBブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⫌ U+2ACCブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⫍ U+2ACDブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⫎ U+2ACEブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⫏ U+2ACFブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⫐ U+2AD0ブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⫑ U+2AD1ブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⫒ U+2AD2ブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⫓ U+2AD3ブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⫔ U+2AD4ブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⫕ U+2AD5ブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⫖ U+2AD6ブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⫗ U+2AD7ブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⫘ U+2AD8ブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⫙ U+2AD9ブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⫚ U+2ADAブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⫞ U+2ADEブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⫟ U+2ADFブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⫠ U+2AE0ブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⫡ U+2AE1ブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⫢ U+2AE2ブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⫣ U+2AE3ブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⫤ U+2AE4ブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⫥ U+2AE5ブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⫦ U+2AE6ブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⫧ U+2AE7ブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⫨ U+2AE8ブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⫩ U+2AE9ブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⫪ U+2AEAブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⫫ U+2AEBブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⫮ U+2AEEブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⫲ U+2AF2ブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⫳ U+2AF3ブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⫴ U+2AF4ブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⫵ U+2AF5ブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⫷ U+2AF7ブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⫸ U+2AF8ブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⫹ U+2AF9ブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⫺ U+2AFAブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⬀ U+2B00ブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⬁ U+2B01ブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⬂ U+2B02ブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⬃ U+2B03ブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⬈ U+2B08ブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⬉ U+2B09ブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⬊ U+2B0Aブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⬋ U+2B0Bブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⬿ U+2B3Fブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⭍ U+2B4Dブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⭎ U+2B4Eブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⭏ U+2B4Fブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⭚ U+2B5Aブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⭛ U+2B5Bブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⭜ U+2B5Cブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⭝ U+2B5Dブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⭞ U+2B5Eブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⭟ U+2B5Fブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⭦ U+2B66ブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⭧ U+2B67ブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⭨ U+2B68ブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⭩ U+2B69ブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⭮ U+2B6Eブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⭯ U+2B6Fブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⭶ U+2B76ブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⭷ U+2B77ブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⭸ U+2B78ブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⭹ U+2B79ブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⮈ U+2B88ブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⮉ U+2B89ブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⮊ U+2B8Aブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⮋ U+2B8Bブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⮌ U+2B8Cブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⮍ U+2B8Dブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⮎ U+2B8Eブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⮏ U+2B8Fブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⮔ U+2B94ブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⮰ U+2BB0ブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⮱ U+2BB1ブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⮲ U+2BB2ブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⮳ U+2BB3ブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⮴ U+2BB4ブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⮵ U+2BB5ブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⮶ U+2BB6ブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⮷ U+2BB7ブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
⯑ U+2BD1ブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
文字列 != U+0021 U+003D
String
ブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
文字列 *= U+002A U+003D
String
ブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
文字列 += U+002B U+003D
String
ブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
文字列 -= U+002D U+003D
String
ブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
文字列 -> U+002D U+003E
String
ブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
文字列 // U+002F U+002F
String
ブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
文字列 /= U+002F U+003D
String
ブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
文字列 := U+003A U+003D
String
ブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
文字列 <= U+003C U+003D
String
ブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
文字列 == U+003D U+003D
String
ブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
文字列 >= U+003E U+003D
String
ブロック軸
block
infix0.2777777777777778em0.2777777777777778emN/A
文字列 || U+007C U+007C
String
ブロック軸
block
infix0.2777777777777778em0.2777777777777778emfence
← U+2190行内軸
inline
infix0.2777777777777778em0.2777777777777778emstretchy
↑ U+2191ブロック軸
block
infix0.2777777777777778em0.2777777777777778emstretchy
→ U+2192行内軸
inline
infix0.2777777777777778em0.2777777777777778emstretchy
↓ U+2193ブロック軸
block
infix0.2777777777777778em0.2777777777777778emstretchy
↔ U+2194行内軸
inline
infix0.2777777777777778em0.2777777777777778emstretchy
↕ U+2195ブロック軸
block
infix0.2777777777777778em0.2777777777777778emstretchy
↚ U+219A行内軸
inline
infix0.2777777777777778em0.2777777777777778emstretchy
↛ U+219B行内軸
inline
infix0.2777777777777778em0.2777777777777778emstretchy
↜ U+219C行内軸
inline
infix0.2777777777777778em0.2777777777777778emstretchy
↝ U+219D行内軸
inline
infix0.2777777777777778em0.2777777777777778emstretchy
↞ U+219E行内軸
inline
infix0.2777777777777778em0.2777777777777778emstretchy
↟ U+219Fブロック軸
block
infix0.2777777777777778em0.2777777777777778emstretchy
↠ U+21A0行内軸
inline
infix0.2777777777777778em0.2777777777777778emstretchy
↡ U+21A1ブロック軸
block
infix0.2777777777777778em0.2777777777777778emstretchy
↢ U+21A2行内軸
inline
infix0.2777777777777778em0.2777777777777778emstretchy
↣ U+21A3行内軸
inline
infix0.2777777777777778em0.2777777777777778emstretchy
↤ U+21A4行内軸
inline
infix0.2777777777777778em0.2777777777777778emstretchy
↥ U+21A5ブロック軸
block
infix0.2777777777777778em0.2777777777777778emstretchy
↦ U+21A6行内軸
inline
infix0.2777777777777778em0.2777777777777778emstretchy
↧ U+21A7ブロック軸
block
infix0.2777777777777778em0.2777777777777778emstretchy
↨ U+21A8ブロック軸
block
infix0.2777777777777778em0.2777777777777778emstretchy
↩ U+21A9行内軸
inline
infix0.2777777777777778em0.2777777777777778emstretchy
↪ U+21AA行内軸
inline
infix0.2777777777777778em0.2777777777777778emstretchy
↫ U+21AB行内軸
inline
infix0.2777777777777778em0.2777777777777778emstretchy
↬ U+21AC行内軸
inline
infix0.2777777777777778em0.2777777777777778emstretchy
↭ U+21AD行内軸
inline
infix0.2777777777777778em0.2777777777777778emstretchy
↮ U+21AE行内軸
inline
infix0.2777777777777778em0.2777777777777778emstretchy
↰ U+21B0ブロック軸
block
infix0.2777777777777778em0.2777777777777778emstretchy
↱ U+21B1ブロック軸
block
infix0.2777777777777778em0.2777777777777778emstretchy
↲ U+21B2ブロック軸
block
infix0.2777777777777778em0.2777777777777778emstretchy
↳ U+21B3ブロック軸
block
infix0.2777777777777778em0.2777777777777778emstretchy
↴ U+21B4行内軸
inline
infix0.2777777777777778em0.2777777777777778emstretchy
↵ U+21B5ブロック軸
block
infix0.2777777777777778em0.2777777777777778emstretchy
↹ U+21B9行内軸
inline
infix0.2777777777777778em0.2777777777777778emstretchy
↼ U+21BC行内軸
inline
infix0.2777777777777778em0.2777777777777778emstretchy
↽ U+21BD行内軸
inline
infix0.2777777777777778em0.2777777777777778emstretchy
↾ U+21BEブロック軸
block
infix0.2777777777777778em0.2777777777777778emstretchy
↿ U+21BFブロック軸
block
infix0.2777777777777778em0.2777777777777778emstretchy
⇀ U+21C0行内軸
inline
infix0.2777777777777778em0.2777777777777778emstretchy
⇁ U+21C1行内軸
inline
infix0.2777777777777778em0.2777777777777778emstretchy
⇂ U+21C2ブロック軸
block
infix0.2777777777777778em0.2777777777777778emstretchy
⇃ U+21C3ブロック軸
block
infix0.2777777777777778em0.2777777777777778emstretchy
⇄ U+21C4行内軸
inline
infix0.2777777777777778em0.2777777777777778emstretchy
⇅ U+21C5ブロック軸
block
infix0.2777777777777778em0.2777777777777778emstretchy
⇆ U+21C6行内軸
inline
infix0.2777777777777778em0.2777777777777778emstretchy
⇇ U+21C7行内軸
inline
infix0.2777777777777778em0.2777777777777778emstretchy
⇈ U+21C8ブロック軸
block
infix0.2777777777777778em0.2777777777777778emstretchy
⇉ U+21C9行内軸
inline
infix0.2777777777777778em0.2777777777777778emstretchy
⇊ U+21CAブロック軸
block
infix0.2777777777777778em0.2777777777777778emstretchy
⇋ U+21CB行内軸
inline
infix0.2777777777777778em0.2777777777777778emstretchy
⇌ U+21CC行内軸
inline
infix0.2777777777777778em0.2777777777777778emstretchy
⇍ U+21CD行内軸
inline
infix0.2777777777777778em0.2777777777777778emstretchy
⇎ U+21CE行内軸
inline
infix0.2777777777777778em0.2777777777777778emstretchy
⇏ U+21CF行内軸
inline
infix0.2777777777777778em0.2777777777777778emstretchy
⇐ U+21D0行内軸
inline
infix0.2777777777777778em0.2777777777777778emstretchy
⇑ U+21D1ブロック軸
block
infix0.2777777777777778em0.2777777777777778emstretchy
⇒ U+21D2行内軸
inline
infix0.2777777777777778em0.2777777777777778emstretchy
⇓ U+21D3ブロック軸
block
infix0.2777777777777778em0.2777777777777778emstretchy
⇔ U+21D4行内軸
inline
infix0.2777777777777778em0.2777777777777778emstretchy
⇕ U+21D5ブロック軸
block
infix0.2777777777777778em0.2777777777777778emstretchy
⇚ U+21DA行内軸
inline
infix0.2777777777777778em0.2777777777777778emstretchy
⇛ U+21DB行内軸
inline
infix0.2777777777777778em0.2777777777777778emstretchy
⇜ U+21DC行内軸
inline
infix0.2777777777777778em0.2777777777777778emstretchy
⇝ U+21DD行内軸
inline
infix0.2777777777777778em0.2777777777777778emstretchy
⇞ U+21DEブロック軸
block
infix0.2777777777777778em0.2777777777777778emstretchy
⇟ U+21DFブロック軸
block
infix0.2777777777777778em0.2777777777777778emstretchy
⇠ U+21E0行内軸
inline
infix0.2777777777777778em0.2777777777777778emstretchy
⇡ U+21E1ブロック軸
block
infix0.2777777777777778em0.2777777777777778emstretchy
⇢ U+21E2行内軸
inline
infix0.2777777777777778em0.2777777777777778emstretchy
⇣ U+21E3ブロック軸
block
infix0.2777777777777778em0.2777777777777778emstretchy
⇤ U+21E4行内軸
inline
infix0.2777777777777778em0.2777777777777778emstretchy
⇥ U+21E5行内軸
inline
infix0.2777777777777778em0.2777777777777778emstretchy
⇦ U+21E6行内軸
inline
infix0.2777777777777778em0.2777777777777778emstretchy
⇧ U+21E7ブロック軸
block
infix0.2777777777777778em0.2777777777777778emstretchy
⇨ U+21E8行内軸
inline
infix0.2777777777777778em0.2777777777777778emstretchy
⇩ U+21E9ブロック軸
block
infix0.2777777777777778em0.2777777777777778emstretchy
⇪ U+21EAブロック軸
block
infix0.2777777777777778em0.2777777777777778emstretchy
⇫ U+21EBブロック軸
block
infix0.2777777777777778em0.2777777777777778emstretchy
⇬ U+21ECブロック軸
block
infix0.2777777777777778em0.2777777777777778emstretchy
⇭ U+21EDブロック軸
block
infix0.2777777777777778em0.2777777777777778emstretchy
⇮ U+21EEブロック軸
block
infix0.2777777777777778em0.2777777777777778emstretchy
⇯ U+21EFブロック軸
block
infix0.2777777777777778em0.2777777777777778emstretchy
⇰ U+21F0行内軸
inline
infix0.2777777777777778em0.2777777777777778emstretchy
⇳ U+21F3ブロック軸
block
infix0.2777777777777778em0.2777777777777778emstretchy
⇴ U+21F4行内軸
inline
infix0.2777777777777778em0.2777777777777778emstretchy
⇵ U+21F5ブロック軸
block
infix0.2777777777777778em0.2777777777777778emstretchy
⇶ U+21F6行内軸
inline
infix0.2777777777777778em0.2777777777777778emstretchy
⇷ U+21F7行内軸
inline
infix0.2777777777777778em0.2777777777777778emstretchy
⇸ U+21F8行内軸
inline
infix0.2777777777777778em0.2777777777777778emstretchy
⇹ U+21F9行内軸
inline
infix0.2777777777777778em0.2777777777777778emstretchy
⇺ U+21FA行内軸
inline
infix0.2777777777777778em0.2777777777777778emstretchy
⇻ U+21FB行内軸
inline
infix0.2777777777777778em0.2777777777777778emstretchy
⇼ U+21FC行内軸
inline
infix0.2777777777777778em0.2777777777777778emstretchy
⇽ U+21FD行内軸
inline
infix0.2777777777777778em0.2777777777777778emstretchy
⇾ U+21FE行内軸
inline
infix0.2777777777777778em0.2777777777777778emstretchy
⇿ U+21FF行内軸
inline
infix0.2777777777777778em0.2777777777777778emstretchy
➔ U+2794行内軸
inline
infix0.2777777777777778em0.2777777777777778emstretchy
➙ U+2799行内軸
inline
infix0.2777777777777778em0.2777777777777778emstretchy
➛ U+279B行内軸
inline
infix0.2777777777777778em0.2777777777777778emstretchy
➜ U+279C行内軸
inline
infix0.2777777777777778em0.2777777777777778emstretchy
➝ U+279D行内軸
inline
infix0.2777777777777778em0.2777777777777778emstretchy
➞ U+279E行内軸
inline
infix0.2777777777777778em0.2777777777777778emstretchy
➟ U+279F行内軸
inline
infix0.2777777777777778em0.2777777777777778emstretchy
➠ U+27A0行内軸
inline
infix0.2777777777777778em0.2777777777777778emstretchy
➡ U+27A1行内軸
inline
infix0.2777777777777778em0.2777777777777778emstretchy
➥ U+27A5行内軸
inline
infix0.2777777777777778em0.2777777777777778emstretchy
➦ U+27A6行内軸
inline
infix0.2777777777777778em0.2777777777777778emstretchy
➨ U+27A8行内軸
inline
infix0.2777777777777778em0.2777777777777778emstretchy
➩ U+27A9行内軸
inline
infix0.2777777777777778em0.2777777777777778emstretchy
➪ U+27AA行内軸
inline
infix0.2777777777777778em0.2777777777777778emstretchy
➫ U+27AB行内軸
inline
infix0.2777777777777778em0.2777777777777778emstretchy
➬ U+27AC行内軸
inline
infix0.2777777777777778em0.2777777777777778emstretchy
➭ U+27AD行内軸
inline
infix0.2777777777777778em0.2777777777777778emstretchy
➮ U+27AE行内軸
inline
infix0.2777777777777778em0.2777777777777778emstretchy
➯ U+27AF行内軸
inline
infix0.2777777777777778em0.2777777777777778emstretchy
➱ U+27B1行内軸
inline
infix0.2777777777777778em0.2777777777777778emstretchy
➳ U+27B3行内軸
inline
infix0.2777777777777778em0.2777777777777778emstretchy
➵ U+27B5行内軸
inline
infix0.2777777777777778em0.2777777777777778emstretchy
➸ U+27B8行内軸
inline
infix0.2777777777777778em0.2777777777777778emstretchy
➺ U+27BA行内軸
inline
infix0.2777777777777778em0.2777777777777778emstretchy
➻ U+27BB行内軸
inline
infix0.2777777777777778em0.2777777777777778emstretchy
➼ U+27BC行内軸
inline
infix0.2777777777777778em0.2777777777777778emstretchy
➽ U+27BD行内軸
inline
infix0.2777777777777778em0.2777777777777778emstretchy
➾ U+27BE行内軸
inline
infix0.2777777777777778em0.2777777777777778emstretchy
⟰ U+27F0ブロック軸
block
infix0.2777777777777778em0.2777777777777778emstretchy
⟱ U+27F1ブロック軸
block
infix0.2777777777777778em0.2777777777777778emstretchy
⟴ U+27F4行内軸
inline
infix0.2777777777777778em0.2777777777777778emstretchy
⟵ U+27F5行内軸
inline
infix0.2777777777777778em0.2777777777777778emstretchy
⟶ U+27F6行内軸
inline
infix0.2777777777777778em0.2777777777777778emstretchy
⟷ U+27F7行内軸
inline
infix0.2777777777777778em0.2777777777777778emstretchy
⟸ U+27F8行内軸
inline
infix0.2777777777777778em0.2777777777777778emstretchy
⟹ U+27F9行内軸
inline
infix0.2777777777777778em0.2777777777777778emstretchy
⟺ U+27FA行内軸
inline
infix0.2777777777777778em0.2777777777777778emstretchy
⟻ U+27FB行内軸
inline
infix0.2777777777777778em0.2777777777777778emstretchy
⟼ U+27FC行内軸
inline
infix0.2777777777777778em0.2777777777777778emstretchy
⟽ U+27FD行内軸
inline
infix0.2777777777777778em0.2777777777777778emstretchy
⟾ U+27FE行内軸
inline
infix0.2777777777777778em0.2777777777777778emstretchy
⟿ U+27FF行内軸
inline
infix0.2777777777777778em0.2777777777777778emstretchy
⤀ U+2900行内軸
inline
infix0.2777777777777778em0.2777777777777778emstretchy
⤁ U+2901行内軸
inline
infix0.2777777777777778em0.2777777777777778emstretchy
⤂ U+2902行内軸
inline
infix0.2777777777777778em0.2777777777777778emstretchy
⤃ U+2903行内軸
inline
infix0.2777777777777778em0.2777777777777778emstretchy
⤄ U+2904行内軸
inline
infix0.2777777777777778em0.2777777777777778emstretchy
⤅ U+2905行内軸
inline
infix0.2777777777777778em0.2777777777777778emstretchy
⤆ U+2906行内軸
inline
infix0.2777777777777778em0.2777777777777778emstretchy
⤇ U+2907行内軸
inline
infix0.2777777777777778em0.2777777777777778emstretchy
⤈ U+2908ブロック軸
block
infix0.2777777777777778em0.2777777777777778emstretchy
⤉ U+2909ブロック軸
block
infix0.2777777777777778em0.2777777777777778emstretchy
⤊ U+290Aブロック軸
block
infix0.2777777777777778em0.2777777777777778emstretchy
⤋ U+290Bブロック軸
block
infix0.2777777777777778em0.2777777777777778emstretchy
⤌ U+290C行内軸
inline
infix0.2777777777777778em0.2777777777777778emstretchy
⤍ U+290D行内軸
inline
infix0.2777777777777778em0.2777777777777778emstretchy
⤎ U+290E行内軸
inline
infix0.2777777777777778em0.2777777777777778emstretchy
⤏ U+290F行内軸
inline
infix0.2777777777777778em0.2777777777777778emstretchy
⤐ U+2910行内軸
inline
infix0.2777777777777778em0.2777777777777778emstretchy
⤑ U+2911行内軸
inline
infix0.2777777777777778em0.2777777777777778emstretchy
⤒ U+2912ブロック軸
block
infix0.2777777777777778em0.2777777777777778emstretchy
⤓ U+2913ブロック軸
block
infix0.2777777777777778em0.2777777777777778emstretchy
⤔ U+2914行内軸
inline
infix0.2777777777777778em0.2777777777777778emstretchy
⤕ U+2915行内軸
inline
infix0.2777777777777778em0.2777777777777778emstretchy
⤖ U+2916行内軸
inline
infix0.2777777777777778em0.2777777777777778emstretchy
⤗ U+2917行内軸
inline
infix0.2777777777777778em0.2777777777777778emstretchy
⤘ U+2918行内軸
inline
infix0.2777777777777778em0.2777777777777778emstretchy
⤙ U+2919行内軸
inline
infix0.2777777777777778em0.2777777777777778emstretchy
⤚ U+291A行内軸
inline
infix0.2777777777777778em0.2777777777777778emstretchy
⤛ U+291B行内軸
inline
infix0.2777777777777778em0.2777777777777778emstretchy
⤜ U+291C行内軸
inline
infix0.2777777777777778em0.2777777777777778emstretchy
⤝ U+291D行内軸
inline
infix0.2777777777777778em0.2777777777777778emstretchy
⤞ U+291E行内軸
inline
infix0.2777777777777778em0.2777777777777778emstretchy
⤟ U+291F行内軸
inline
infix0.2777777777777778em0.2777777777777778emstretchy
⤠ U+2920行内軸
inline
infix0.2777777777777778em0.2777777777777778emstretchy
⤴ U+2934ブロック軸
block
infix0.2777777777777778em0.2777777777777778emstretchy
⤵ U+2935ブロック軸
block
infix0.2777777777777778em0.2777777777777778emstretchy
⤶ U+2936ブロック軸
block
infix0.2777777777777778em0.2777777777777778emstretchy
⤷ U+2937ブロック軸
block
infix0.2777777777777778em0.2777777777777778emstretchy
⥂ U+2942行内軸
inline
infix0.2777777777777778em0.2777777777777778emstretchy
⥃ U+2943行内軸
inline
infix0.2777777777777778em0.2777777777777778emstretchy
⥄ U+2944行内軸
inline
infix0.2777777777777778em0.2777777777777778emstretchy
⥅ U+2945行内軸
inline
infix0.2777777777777778em0.2777777777777778emstretchy
⥆ U+2946行内軸
inline
infix0.2777777777777778em0.2777777777777778emstretchy
⥇ U+2947行内軸
inline
infix0.2777777777777778em0.2777777777777778emstretchy
⥈ U+2948行内軸
inline
infix0.2777777777777778em0.2777777777777778emstretchy
⥉ U+2949ブロック軸
block
infix0.2777777777777778em0.2777777777777778emstretchy
⥊ U+294A行内軸
inline
infix0.2777777777777778em0.2777777777777778emstretchy
⥋ U+294B行内軸
inline
infix0.2777777777777778em0.2777777777777778emstretchy
⥌ U+294Cブロック軸
block
infix0.2777777777777778em0.2777777777777778emstretchy
⥍ U+294Dブロック軸
block
infix0.2777777777777778em0.2777777777777778emstretchy
⥎ U+294E行内軸
inline
infix0.2777777777777778em0.2777777777777778emstretchy
⥏ U+294Fブロック軸
block
infix0.2777777777777778em0.2777777777777778emstretchy
⥐ U+2950行内軸
inline
infix0.2777777777777778em0.2777777777777778emstretchy
⥑ U+2951ブロック軸
block
infix0.2777777777777778em0.2777777777777778emstretchy
⥒ U+2952行内軸
inline
infix0.2777777777777778em0.2777777777777778emstretchy
⥓ U+2953行内軸
inline
infix0.2777777777777778em0.2777777777777778emstretchy
⥔ U+2954ブロック軸
block
infix0.2777777777777778em0.2777777777777778emstretchy
⥕ U+2955ブロック軸
block
infix0.2777777777777778em0.2777777777777778emstretchy
⥖ U+2956行内軸
inline
infix0.2777777777777778em0.2777777777777778emstretchy
⥗ U+2957行内軸
inline
infix0.2777777777777778em0.2777777777777778emstretchy
⥘ U+2958ブロック軸
block
infix0.2777777777777778em0.2777777777777778emstretchy
⥙ U+2959ブロック軸
block
infix0.2777777777777778em0.2777777777777778emstretchy
⥚ U+295A行内軸
inline
infix0.2777777777777778em0.2777777777777778emstretchy
⥛ U+295B行内軸
inline
infix0.2777777777777778em0.2777777777777778emstretchy
⥜ U+295Cブロック軸
block
infix0.2777777777777778em0.2777777777777778emstretchy
⥝ U+295Dブロック軸
block
infix0.2777777777777778em0.2777777777777778emstretchy
⥞ U+295E行内軸
inline
infix0.2777777777777778em0.2777777777777778emstretchy
⥟ U+295F行内軸
inline
infix0.2777777777777778em0.2777777777777778emstretchy
⥠ U+2960ブロック軸
block
infix0.2777777777777778em0.2777777777777778emstretchy
⥡ U+2961ブロック軸
block
infix0.2777777777777778em0.2777777777777778emstretchy
⥢ U+2962行内軸
inline
infix0.2777777777777778em0.2777777777777778emstretchy
⥣ U+2963ブロック軸
block
infix0.2777777777777778em0.2777777777777778emstretchy
⥤ U+2964行内軸
inline
infix0.2777777777777778em0.2777777777777778emstretchy
⥥ U+2965ブロック軸
block
infix0.2777777777777778em0.2777777777777778emstretchy
⥦ U+2966行内軸
inline
infix0.2777777777777778em0.2777777777777778emstretchy
⥧ U+2967行内軸
inline
infix0.2777777777777778em0.2777777777777778emstretchy
⥨ U+2968行内軸
inline
infix0.2777777777777778em0.2777777777777778emstretchy
⥩ U+2969行内軸
inline
infix0.2777777777777778em0.2777777777777778emstretchy
⥪ U+296A行内軸
inline
infix0.2777777777777778em0.2777777777777778emstretchy
⥫ U+296B行内軸
inline
infix0.2777777777777778em0.2777777777777778emstretchy
⥬ U+296C行内軸
inline
infix0.2777777777777778em0.2777777777777778emstretchy
⥭ U+296D行内軸
inline
infix0.2777777777777778em0.2777777777777778emstretchy
⥮ U+296Eブロック軸
block
infix0.2777777777777778em0.2777777777777778emstretchy
⥯ U+296Fブロック軸
block
infix0.2777777777777778em0.2777777777777778emstretchy
⥰ U+2970行内軸
inline
infix0.2777777777777778em0.2777777777777778emstretchy
⥱ U+2971行内軸
inline
infix0.2777777777777778em0.2777777777777778emstretchy
⥲ U+2972行内軸
inline
infix0.2777777777777778em0.2777777777777778emstretchy
⥳ U+2973行内軸
inline
infix0.2777777777777778em0.2777777777777778emstretchy
⥴ U+2974行内軸
inline
infix0.2777777777777778em0.2777777777777778emstretchy
⥵ U+2975行内軸
inline
infix0.2777777777777778em0.2777777777777778emstretchy
⥼ U+297C行内軸
inline
infix0.2777777777777778em0.2777777777777778emstretchy
⥽ U+297D行内軸
inline
infix0.2777777777777778em0.2777777777777778emstretchy
⥾ U+297Eブロック軸
block
infix0.2777777777777778em0.2777777777777778emstretchy
⥿ U+297Fブロック軸
block
infix0.2777777777777778em0.2777777777777778emstretchy
⬄ U+2B04行内軸
inline
infix0.2777777777777778em0.2777777777777778emstretchy
⬅ U+2B05行内軸
inline
infix0.2777777777777778em0.2777777777777778emstretchy
⬆ U+2B06ブロック軸
block
infix0.2777777777777778em0.2777777777777778emstretchy
⬇ U+2B07ブロック軸
block
infix0.2777777777777778em0.2777777777777778emstretchy
⬌ U+2B0C行内軸
inline
infix0.2777777777777778em0.2777777777777778emstretchy
⬍ U+2B0Dブロック軸
block
infix0.2777777777777778em0.2777777777777778emstretchy
⬎ U+2B0Eブロック軸
block
infix0.2777777777777778em0.2777777777777778emstretchy
⬏ U+2B0Fブロック軸
block
infix0.2777777777777778em0.2777777777777778emstretchy
⬐ U+2B10ブロック軸
block
infix0.2777777777777778em0.2777777777777778emstretchy
⬑ U+2B11ブロック軸
block
infix0.2777777777777778em0.2777777777777778emstretchy
⬰ U+2B30行内軸
inline
infix0.2777777777777778em0.2777777777777778emstretchy
⬱ U+2B31行内軸
inline
infix0.2777777777777778em0.2777777777777778emstretchy
⬲ U+2B32行内軸
inline
infix0.2777777777777778em0.2777777777777778emstretchy
⬳ U+2B33行内軸
inline
infix0.2777777777777778em0.2777777777777778emstretchy
⬴ U+2B34行内軸
inline
infix0.2777777777777778em0.2777777777777778emstretchy
⬵ U+2B35行内軸
inline
infix0.2777777777777778em0.2777777777777778emstretchy
⬶ U+2B36行内軸
inline
infix0.2777777777777778em0.2777777777777778emstretchy
⬷ U+2B37行内軸
inline
infix0.2777777777777778em0.2777777777777778emstretchy
⬸ U+2B38行内軸
inline
infix0.2777777777777778em0.2777777777777778emstretchy
⬹ U+2B39行内軸
inline
infix0.2777777777777778em0.2777777777777778emstretchy
⬺ U+2B3A行内軸
inline
infix0.2777777777777778em0.2777777777777778emstretchy
⬻ U+2B3B行内軸
inline
infix0.2777777777777778em0.2777777777777778emstretchy
⬼ U+2B3C行内軸
inline
infix0.2777777777777778em0.2777777777777778emstretchy
⬽ U+2B3D行内軸
inline
infix0.2777777777777778em0.2777777777777778emstretchy
⬾ U+2B3E行内軸
inline
infix0.2777777777777778em0.2777777777777778emstretchy
⭀ U+2B40行内軸
inline
infix0.2777777777777778em0.2777777777777778emstretchy
⭁ U+2B41行内軸
inline
infix0.2777777777777778em0.2777777777777778emstretchy
⭂ U+2B42行内軸
inline
infix0.2777777777777778em0.2777777777777778emstretchy
⭃ U+2B43行内軸
inline
infix0.2777777777777778em0.2777777777777778emstretchy
⭄ U+2B44行内軸
inline
infix0.2777777777777778em0.2777777777777778emstretchy
⭅ U+2B45行内軸
inline
infix0.2777777777777778em0.2777777777777778emstretchy
⭆ U+2B46行内軸
inline
infix0.2777777777777778em0.2777777777777778emstretchy
⭇ U+2B47行内軸
inline
infix0.2777777777777778em0.2777777777777778emstretchy
⭈ U+2B48行内軸
inline
infix0.2777777777777778em0.2777777777777778emstretchy
⭉ U+2B49行内軸
inline
infix0.2777777777777778em0.2777777777777778emstretchy
⭊ U+2B4A行内軸
inline
infix0.2777777777777778em0.2777777777777778emstretchy
⭋ U+2B4B行内軸
inline
infix0.2777777777777778em0.2777777777777778emstretchy
⭌ U+2B4C行内軸
inline
infix0.2777777777777778em0.2777777777777778emstretchy
⭠ U+2B60行内軸
inline
infix0.2777777777777778em0.2777777777777778emstretchy
⭡ U+2B61ブロック軸
block
infix0.2777777777777778em0.2777777777777778emstretchy
⭢ U+2B62行内軸
inline
infix0.2777777777777778em0.2777777777777778emstretchy
⭣ U+2B63ブロック軸
block
infix0.2777777777777778em0.2777777777777778emstretchy
⭤ U+2B64行内軸
inline
infix0.2777777777777778em0.2777777777777778emstretchy
⭥ U+2B65ブロック軸
block
infix0.2777777777777778em0.2777777777777778emstretchy
⭪ U+2B6A行内軸
inline
infix0.2777777777777778em0.2777777777777778emstretchy
⭫ U+2B6Bブロック軸
block
infix0.2777777777777778em0.2777777777777778emstretchy
⭬ U+2B6C行内軸
inline
infix0.2777777777777778em0.2777777777777778emstretchy
⭭ U+2B6Dブロック軸
block
infix0.2777777777777778em0.2777777777777778emstretchy
⭰ U+2B70行内軸
inline
infix0.2777777777777778em0.2777777777777778emstretchy
⭱ U+2B71ブロック軸
block
infix0.2777777777777778em0.2777777777777778emstretchy
⭲ U+2B72行内軸
inline
infix0.2777777777777778em0.2777777777777778emstretchy
⭳ U+2B73ブロック軸
block
infix0.2777777777777778em0.2777777777777778emstretchy
⭺ U+2B7A行内軸
inline
infix0.2777777777777778em0.2777777777777778emstretchy
⭻ U+2B7Bブロック軸
block
infix0.2777777777777778em0.2777777777777778emstretchy
⭼ U+2B7C行内軸
inline
infix0.2777777777777778em0.2777777777777778emstretchy
⭽ U+2B7Dブロック軸
block
infix0.2777777777777778em0.2777777777777778emstretchy
⮀ U+2B80行内軸
inline
infix0.2777777777777778em0.2777777777777778emstretchy
⮁ U+2B81ブロック軸
block
infix0.2777777777777778em0.2777777777777778emstretchy
⮂ U+2B82行内軸
inline
infix0.2777777777777778em0.2777777777777778emstretchy
⮃ U+2B83ブロック軸
block
infix0.2777777777777778em0.2777777777777778emstretchy
⮄ U+2B84行内軸
inline
infix0.2777777777777778em0.2777777777777778emstretchy
⮅ U+2B85ブロック軸
block
infix0.2777777777777778em0.2777777777777778emstretchy
⮆ U+2B86行内軸
inline
infix0.2777777777777778em0.2777777777777778emstretchy
⮇ U+2B87ブロック軸
block
infix0.2777777777777778em0.2777777777777778emstretchy
⮕ U+2B95行内軸
inline
infix0.2777777777777778em0.2777777777777778emstretchy
⮠ U+2BA0ブロック軸
block
infix0.2777777777777778em0.2777777777777778emstretchy
⮡ U+2BA1ブロック軸
block
infix0.2777777777777778em0.2777777777777778emstretchy
⮢ U+2BA2ブロック軸
block
infix0.2777777777777778em0.2777777777777778emstretchy
⮣ U+2BA3ブロック軸
block
infix0.2777777777777778em0.2777777777777778emstretchy
⮤ U+2BA4ブロック軸
block
infix0.2777777777777778em0.2777777777777778emstretchy
⮥ U+2BA5ブロック軸
block
infix0.2777777777777778em0.2777777777777778emstretchy
⮦ U+2BA6ブロック軸
block
infix0.2777777777777778em0.2777777777777778emstretchy
⮧ U+2BA7ブロック軸
block
infix0.2777777777777778em0.2777777777777778emstretchy
⮨ U+2BA8ブロック軸
block
infix0.2777777777777778em0.2777777777777778emstretchy
⮩ U+2BA9ブロック軸
block
infix0.2777777777777778em0.2777777777777778emstretchy
⮪ U+2BAAブロック軸
block
infix0.2777777777777778em0.2777777777777778emstretchy
⮫ U+2BABブロック軸
block
infix0.2777777777777778em0.2777777777777778emstretchy
⮬ U+2BACブロック軸
block
infix0.2777777777777778em0.2777777777777778emstretchy
⮭ U+2BADブロック軸
block
infix0.2777777777777778em0.2777777777777778emstretchy
⮮ U+2BAEブロック軸
block
infix0.2777777777777778em0.2777777777777778emstretchy
⮯ U+2BAFブロック軸
block
infix0.2777777777777778em0.2777777777777778emstretchy
⮸ U+2BB8ブロック軸
block
infix0.2777777777777778em0.2777777777777778emstretchy
+ U+002Bブロック軸
block
infix0.2222222222222222em0.2222222222222222emN/A
- U+002Dブロック軸
block
infix0.2222222222222222em0.2222222222222222emN/A
/ U+002Fブロック軸
block
infix0.2222222222222222em0.2222222222222222emN/A
± U+00B1ブロック軸
block
infix0.2222222222222222em0.2222222222222222emN/A
÷ U+00F7ブロック軸
block
infix0.2222222222222222em0.2222222222222222emN/A
⁄ U+2044ブロック軸
block
infix0.2222222222222222em0.2222222222222222emN/A
− U+2212ブロック軸
block
infix0.2222222222222222em0.2222222222222222emN/A
∓ U+2213ブロック軸
block
infix0.2222222222222222em0.2222222222222222emN/A
∔ U+2214ブロック軸
block
infix0.2222222222222222em0.2222222222222222emN/A
∕ U+2215ブロック軸
block
infix0.2222222222222222em0.2222222222222222emN/A
∖ U+2216ブロック軸
block
infix0.2222222222222222em0.2222222222222222emN/A
∧ U+2227ブロック軸
block
infix0.2222222222222222em0.2222222222222222emN/A
∨ U+2228ブロック軸
block
infix0.2222222222222222em0.2222222222222222emN/A
∩ U+2229ブロック軸
block
infix0.2222222222222222em0.2222222222222222emN/A
∪ U+222Aブロック軸
block
infix0.2222222222222222em0.2222222222222222emN/A
∶ U+2236ブロック軸
block
infix0.2222222222222222em0.2222222222222222emN/A
∸ U+2238ブロック軸
block
infix0.2222222222222222em0.2222222222222222emN/A
⊌ U+228Cブロック軸
block
infix0.2222222222222222em0.2222222222222222emN/A
⊍ U+228Dブロック軸
block
infix0.2222222222222222em0.2222222222222222emN/A
⊎ U+228Eブロック軸
block
infix0.2222222222222222em0.2222222222222222emN/A
⊓ U+2293ブロック軸
block
infix0.2222222222222222em0.2222222222222222emN/A
⊔ U+2294ブロック軸
block
infix0.2222222222222222em0.2222222222222222emN/A
⊕ U+2295ブロック軸
block
infix0.2222222222222222em0.2222222222222222emN/A
⊖ U+2296ブロック軸
block
infix0.2222222222222222em0.2222222222222222emN/A
⊘ U+2298ブロック軸
block
infix0.2222222222222222em0.2222222222222222emN/A
⊝ U+229Dブロック軸
block
infix0.2222222222222222em0.2222222222222222emN/A
⊞ U+229Eブロック軸
block
infix0.2222222222222222em0.2222222222222222emN/A
⊟ U+229Fブロック軸
block
infix0.2222222222222222em0.2222222222222222emN/A
⊻ U+22BBブロック軸
block
infix0.2222222222222222em0.2222222222222222emN/A
⊼ U+22BCブロック軸
block
infix0.2222222222222222em0.2222222222222222emN/A
⊽ U+22BDブロック軸
block
infix0.2222222222222222em0.2222222222222222emN/A
⋎ U+22CEブロック軸
block
infix0.2222222222222222em0.2222222222222222emN/A
⋏ U+22CFブロック軸
block
infix0.2222222222222222em0.2222222222222222emN/A
⋒ U+22D2ブロック軸
block
infix0.2222222222222222em0.2222222222222222emN/A
⋓ U+22D3ブロック軸
block
infix0.2222222222222222em0.2222222222222222emN/A
➕ U+2795ブロック軸
block
infix0.2222222222222222em0.2222222222222222emN/A
➖ U+2796ブロック軸
block
infix0.2222222222222222em0.2222222222222222emN/A
➗ U+2797ブロック軸
block
infix0.2222222222222222em0.2222222222222222emN/A
⦸ U+29B8ブロック軸
block
infix0.2222222222222222em0.2222222222222222emN/A
⦼ U+29BCブロック軸
block
infix0.2222222222222222em0.2222222222222222emN/A
⧄ U+29C4ブロック軸
block
infix0.2222222222222222em0.2222222222222222emN/A
⧅ U+29C5ブロック軸
block
infix0.2222222222222222em0.2222222222222222emN/A
⧵ U+29F5ブロック軸
block
infix0.2222222222222222em0.2222222222222222emN/A
⧶ U+29F6ブロック軸
block
infix0.2222222222222222em0.2222222222222222emN/A
⧷ U+29F7ブロック軸
block
infix0.2222222222222222em0.2222222222222222emN/A
⧸ U+29F8ブロック軸
block
infix0.2222222222222222em0.2222222222222222emN/A
⧹ U+29F9ブロック軸
block
infix0.2222222222222222em0.2222222222222222emN/A
⧺ U+29FAブロック軸
block
infix0.2222222222222222em0.2222222222222222emN/A
⧻ U+29FBブロック軸
block
infix0.2222222222222222em0.2222222222222222emN/A
⨟ U+2A1Fブロック軸
block
infix0.2222222222222222em0.2222222222222222emN/A
⨠ U+2A20ブロック軸
block
infix0.2222222222222222em0.2222222222222222emN/A
⨡ U+2A21ブロック軸
block
infix0.2222222222222222em0.2222222222222222emN/A
⨢ U+2A22ブロック軸
block
infix0.2222222222222222em0.2222222222222222emN/A
⨣ U+2A23ブロック軸
block
infix0.2222222222222222em0.2222222222222222emN/A
⨤ U+2A24ブロック軸
block
infix0.2222222222222222em0.2222222222222222emN/A
⨥ U+2A25ブロック軸
block
infix0.2222222222222222em0.2222222222222222emN/A
⨦ U+2A26ブロック軸
block
infix0.2222222222222222em0.2222222222222222emN/A
⨧ U+2A27ブロック軸
block
infix0.2222222222222222em0.2222222222222222emN/A
⨨ U+2A28ブロック軸
block
infix0.2222222222222222em0.2222222222222222emN/A
⨩ U+2A29ブロック軸
block
infix0.2222222222222222em0.2222222222222222emN/A
⨪ U+2A2Aブロック軸
block
infix0.2222222222222222em0.2222222222222222emN/A
⨫ U+2A2Bブロック軸
block
infix0.2222222222222222em0.2222222222222222emN/A
⨬ U+2A2Cブロック軸
block
infix0.2222222222222222em0.2222222222222222emN/A
⨭ U+2A2Dブロック軸
block
infix0.2222222222222222em0.2222222222222222emN/A
⨮ U+2A2Eブロック軸
block
infix0.2222222222222222em0.2222222222222222emN/A
⨸ U+2A38ブロック軸
block
infix0.2222222222222222em0.2222222222222222emN/A
⨹ U+2A39ブロック軸
block
infix0.2222222222222222em0.2222222222222222emN/A
⨺ U+2A3Aブロック軸
block
infix0.2222222222222222em0.2222222222222222emN/A
⨾ U+2A3Eブロック軸
block
infix0.2222222222222222em0.2222222222222222emN/A
⩀ U+2A40ブロック軸
block
infix0.2222222222222222em0.2222222222222222emN/A
⩁ U+2A41ブロック軸
block
infix0.2222222222222222em0.2222222222222222emN/A
⩂ U+2A42ブロック軸
block
infix0.2222222222222222em0.2222222222222222emN/A
⩃ U+2A43ブロック軸
block
infix0.2222222222222222em0.2222222222222222emN/A
⩄ U+2A44ブロック軸
block
infix0.2222222222222222em0.2222222222222222emN/A
⩅ U+2A45ブロック軸
block
infix0.2222222222222222em0.2222222222222222emN/A
⩆ U+2A46ブロック軸
block
infix0.2222222222222222em0.2222222222222222emN/A
⩇ U+2A47ブロック軸
block
infix0.2222222222222222em0.2222222222222222emN/A
⩈ U+2A48ブロック軸
block
infix0.2222222222222222em0.2222222222222222emN/A
⩉ U+2A49ブロック軸
block
infix0.2222222222222222em0.2222222222222222emN/A
⩊ U+2A4Aブロック軸
block
infix0.2222222222222222em0.2222222222222222emN/A
⩋ U+2A4Bブロック軸
block
infix0.2222222222222222em0.2222222222222222emN/A
⩌ U+2A4Cブロック軸
block
infix0.2222222222222222em0.2222222222222222emN/A
⩍ U+2A4Dブロック軸
block
infix0.2222222222222222em0.2222222222222222emN/A
⩎ U+2A4Eブロック軸
block
infix0.2222222222222222em0.2222222222222222emN/A
⩏ U+2A4Fブロック軸
block
infix0.2222222222222222em0.2222222222222222emN/A
⩑ U+2A51ブロック軸
block
infix0.2222222222222222em0.2222222222222222emN/A
⩒ U+2A52ブロック軸
block
infix0.2222222222222222em0.2222222222222222emN/A
⩓ U+2A53ブロック軸
block
infix0.2222222222222222em0.2222222222222222emN/A
⩔ U+2A54ブロック軸
block
infix0.2222222222222222em0.2222222222222222emN/A
⩕ U+2A55ブロック軸
block
infix0.2222222222222222em0.2222222222222222emN/A
⩖ U+2A56ブロック軸
block
infix0.2222222222222222em0.2222222222222222emN/A
⩗ U+2A57ブロック軸
block
infix0.2222222222222222em0.2222222222222222emN/A
⩘ U+2A58ブロック軸
block
infix0.2222222222222222em0.2222222222222222emN/A
⩙ U+2A59ブロック軸
block
infix0.2222222222222222em0.2222222222222222emN/A
⩚ U+2A5Aブロック軸
block
infix0.2222222222222222em0.2222222222222222emN/A
⩛ U+2A5Bブロック軸
block
infix0.2222222222222222em0.2222222222222222emN/A
⩜ U+2A5Cブロック軸
block
infix0.2222222222222222em0.2222222222222222emN/A
⩝ U+2A5Dブロック軸
block
infix0.2222222222222222em0.2222222222222222emN/A
⩞ U+2A5Eブロック軸
block
infix0.2222222222222222em0.2222222222222222emN/A
⩟ U+2A5Fブロック軸
block
infix0.2222222222222222em0.2222222222222222emN/A
⩠ U+2A60ブロック軸
block
infix0.2222222222222222em0.2222222222222222emN/A
⩡ U+2A61ブロック軸
block
infix0.2222222222222222em0.2222222222222222emN/A
⩢ U+2A62ブロック軸
block
infix0.2222222222222222em0.2222222222222222emN/A
⩣ U+2A63ブロック軸
block
infix0.2222222222222222em0.2222222222222222emN/A
⫛ U+2ADBブロック軸
block
infix0.2222222222222222em0.2222222222222222emN/A
⫶ U+2AF6ブロック軸
block
infix0.2222222222222222em0.2222222222222222emN/A
⫻ U+2AFBブロック軸
block
infix0.2222222222222222em0.2222222222222222emN/A
⫽ U+2AFDブロック軸
block
infix0.2222222222222222em0.2222222222222222emN/A
文字列 && U+0026 U+0026
String
ブロック軸
block
infix0.2222222222222222em0.2222222222222222emN/A
% U+0025ブロック軸
block
infix0.16666666666666666em0.16666666666666666emN/A
* U+002Aブロック軸
block
infix0.16666666666666666em0.16666666666666666emN/A
. U+002Eブロック軸
block
infix0.16666666666666666em0.16666666666666666emN/A
? U+003Fブロック軸
block
infix0.16666666666666666em0.16666666666666666emN/A
@ U+0040ブロック軸
block
infix0.16666666666666666em0.16666666666666666emN/A
^ U+005E行内軸
inline
infix0.16666666666666666em0.16666666666666666emN/A
· U+00B7ブロック軸
block
infix0.16666666666666666em0.16666666666666666emN/A
× U+00D7ブロック軸
block
infix0.16666666666666666em0.16666666666666666emN/A
• U+2022ブロック軸
block
infix0.16666666666666666em0.16666666666666666emN/A
⁃ U+2043ブロック軸
block
infix0.16666666666666666em0.16666666666666666emN/A
∗ U+2217ブロック軸
block
infix0.16666666666666666em0.16666666666666666emN/A
∘ U+2218ブロック軸
block
infix0.16666666666666666em0.16666666666666666emN/A
∙ U+2219ブロック軸
block
infix0.16666666666666666em0.16666666666666666emN/A
≀ U+2240ブロック軸
block
infix0.16666666666666666em0.16666666666666666emN/A
⊗ U+2297ブロック軸
block
infix0.16666666666666666em0.16666666666666666emN/A
⊙ U+2299ブロック軸
block
infix0.16666666666666666em0.16666666666666666emN/A
⊚ U+229Aブロック軸
block
infix0.16666666666666666em0.16666666666666666emN/A
⊛ U+229Bブロック軸
block
infix0.16666666666666666em0.16666666666666666emN/A
⊠ U+22A0ブロック軸
block
infix0.16666666666666666em0.16666666666666666emN/A
⊡ U+22A1ブロック軸
block
infix0.16666666666666666em0.16666666666666666emN/A
⊺ U+22BAブロック軸
block
infix0.16666666666666666em0.16666666666666666emN/A
⋄ U+22C4ブロック軸
block
infix0.16666666666666666em0.16666666666666666emN/A
⋅ U+22C5ブロック軸
block
infix0.16666666666666666em0.16666666666666666emN/A
⋆ U+22C6ブロック軸
block
infix0.16666666666666666em0.16666666666666666emN/A
⋇ U+22C7ブロック軸
block
infix0.16666666666666666em0.16666666666666666emN/A
⋉ U+22C9ブロック軸
block
infix0.16666666666666666em0.16666666666666666emN/A
⋊ U+22CAブロック軸
block
infix0.16666666666666666em0.16666666666666666emN/A
⋋ U+22CBブロック軸
block
infix0.16666666666666666em0.16666666666666666emN/A
⋌ U+22CCブロック軸
block
infix0.16666666666666666em0.16666666666666666emN/A
⌅ U+2305ブロック軸
block
infix0.16666666666666666em0.16666666666666666emN/A
⌆ U+2306ブロック軸
block
infix0.16666666666666666em0.16666666666666666emN/A
⟋ U+27CBブロック軸
block
infix0.16666666666666666em0.16666666666666666emN/A
⟍ U+27CDブロック軸
block
infix0.16666666666666666em0.16666666666666666emN/A
⧆ U+29C6ブロック軸
block
infix0.16666666666666666em0.16666666666666666emN/A
⧇ U+29C7ブロック軸
block
infix0.16666666666666666em0.16666666666666666emN/A
⧈ U+29C8ブロック軸
block
infix0.16666666666666666em0.16666666666666666emN/A
⧔ U+29D4ブロック軸
block
infix0.16666666666666666em0.16666666666666666emN/A
⧕ U+29D5ブロック軸
block
infix0.16666666666666666em0.16666666666666666emN/A
⧖ U+29D6ブロック軸
block
infix0.16666666666666666em0.16666666666666666emN/A
⧗ U+29D7ブロック軸
block
infix0.16666666666666666em0.16666666666666666emN/A
⧢ U+29E2ブロック軸
block
infix0.16666666666666666em0.16666666666666666emN/A
⨝ U+2A1Dブロック軸
block
infix0.16666666666666666em0.16666666666666666emN/A
⨞ U+2A1Eブロック軸
block
infix0.16666666666666666em0.16666666666666666emN/A
⨯ U+2A2Fブロック軸
block
infix0.16666666666666666em0.16666666666666666emN/A
⨰ U+2A30ブロック軸
block
infix0.16666666666666666em0.16666666666666666emN/A
⨱ U+2A31ブロック軸
block
infix0.16666666666666666em0.16666666666666666emN/A
⨲ U+2A32ブロック軸
block
infix0.16666666666666666em0.16666666666666666emN/A
⨳ U+2A33ブロック軸
block
infix0.16666666666666666em0.16666666666666666emN/A
⨴ U+2A34ブロック軸
block
infix0.16666666666666666em0.16666666666666666emN/A
⨵ U+2A35ブロック軸
block
infix0.16666666666666666em0.16666666666666666emN/A
⨶ U+2A36ブロック軸
block
infix0.16666666666666666em0.16666666666666666emN/A
⨷ U+2A37ブロック軸
block
infix0.16666666666666666em0.16666666666666666emN/A
⨻ U+2A3Bブロック軸
block
infix0.16666666666666666em0.16666666666666666emN/A
⨼ U+2A3Cブロック軸
block
infix0.16666666666666666em0.16666666666666666emN/A
⨽ U+2A3Dブロック軸
block
infix0.16666666666666666em0.16666666666666666emN/A
⨿ U+2A3Fブロック軸
block
infix0.16666666666666666em0.16666666666666666emN/A
⩐ U+2A50ブロック軸
block
infix0.16666666666666666em0.16666666666666666emN/A
⩤ U+2A64ブロック軸
block
infix0.16666666666666666em0.16666666666666666emN/A
⩥ U+2A65ブロック軸
block
infix0.16666666666666666em0.16666666666666666emN/A
⫝̸ U+2ADCブロック軸
block
infix0.16666666666666666em0.16666666666666666emN/A
⫝ U+2ADDブロック軸
block
infix0.16666666666666666em0.16666666666666666emN/A
⫾ U+2AFEブロック軸
block
infix0.16666666666666666em0.16666666666666666emN/A
文字列 ** U+002A U+002A
String
ブロック軸
block
infix0.16666666666666666em0.16666666666666666emN/A
文字列 <> U+003C U+003E
String
ブロック軸
block
infix0.16666666666666666em0.16666666666666666emN/A
! U+0021ブロック軸
block
prefix00N/A
+ U+002Bブロック軸
block
prefix00N/A
- U+002Dブロック軸
block
prefix00N/A
¬ U+00ACブロック軸
block
prefix00N/A
± U+00B1ブロック軸
block
prefix00N/A
‘ U+2018ブロック軸
block
prefix00fence
“ U+201Cブロック軸
block
prefix00fence
∀ U+2200ブロック軸
block
prefix00N/A
∁ U+2201ブロック軸
block
prefix00N/A
∃ U+2203ブロック軸
block
prefix00N/A
∄ U+2204ブロック軸
block
prefix00N/A
∇ U+2207ブロック軸
block
prefix00N/A
− U+2212ブロック軸
block
prefix00N/A
∓ U+2213ブロック軸
block
prefix00N/A
∟ U+221Fブロック軸
block
prefix00N/A
∠ U+2220ブロック軸
block
prefix00N/A
∡ U+2221ブロック軸
block
prefix00N/A
∢ U+2222ブロック軸
block
prefix00N/A
∴ U+2234ブロック軸
block
prefix00N/A
∵ U+2235ブロック軸
block
prefix00N/A
∼ U+223Cブロック軸
block
prefix00N/A
⊾ U+22BEブロック軸
block
prefix00N/A
⊿ U+22BFブロック軸
block
prefix00N/A
⌐ U+2310ブロック軸
block
prefix00N/A
⌙ U+2319ブロック軸
block
prefix00N/A
➕ U+2795ブロック軸
block
prefix00N/A
➖ U+2796ブロック軸
block
prefix00N/A
⟀ U+27C0ブロック軸
block
prefix00N/A
⦛ U+299Bブロック軸
block
prefix00N/A
⦜ U+299Cブロック軸
block
prefix00N/A
⦝ U+299Dブロック軸
block
prefix00N/A
⦞ U+299Eブロック軸
block
prefix00N/A
⦟ U+299Fブロック軸
block
prefix00N/A
⦠ U+29A0ブロック軸
block
prefix00N/A
⦡ U+29A1ブロック軸
block
prefix00N/A
⦢ U+29A2ブロック軸
block
prefix00N/A
⦣ U+29A3ブロック軸
block
prefix00N/A
⦤ U+29A4ブロック軸
block
prefix00N/A
⦥ U+29A5ブロック軸
block
prefix00N/A
⦦ U+29A6ブロック軸
block
prefix00N/A
⦧ U+29A7ブロック軸
block
prefix00N/A
⦨ U+29A8ブロック軸
block
prefix00N/A
⦩ U+29A9ブロック軸
block
prefix00N/A
⦪ U+29AAブロック軸
block
prefix00N/A
⦫ U+29ABブロック軸
block
prefix00N/A
⦬ U+29ACブロック軸
block
prefix00N/A
⦭ U+29ADブロック軸
block
prefix00N/A
⦮ U+29AEブロック軸
block
prefix00N/A
⦯ U+29AFブロック軸
block
prefix00N/A
⫬ U+2AECブロック軸
block
prefix00N/A
⫭ U+2AEDブロック軸
block
prefix00N/A
文字列 || U+007C U+007C
String
ブロック軸
block
prefix00fence
! U+0021ブロック軸
block
postfix00N/A
" U+0022ブロック軸
block
postfix00N/A
% U+0025ブロック軸
block
postfix00N/A
& U+0026ブロック軸
block
postfix00N/A
' U+0027ブロック軸
block
postfix00N/A
` U+0060ブロック軸
block
postfix00N/A
¨ U+00A8ブロック軸
block
postfix00N/A
° U+00B0ブロック軸
block
postfix00N/A
² U+00B2ブロック軸
block
postfix00N/A
³ U+00B3ブロック軸
block
postfix00N/A
´ U+00B4ブロック軸
block
postfix00N/A
¸ U+00B8ブロック軸
block
postfix00N/A
¹ U+00B9ブロック軸
block
postfix00N/A
ˊ U+02CAブロック軸
block
postfix00N/A
ˋ U+02CBブロック軸
block
postfix00N/A
˘ U+02D8ブロック軸
block
postfix00N/A
˙ U+02D9ブロック軸
block
postfix00N/A
˚ U+02DAブロック軸
block
postfix00N/A
˝ U+02DDブロック軸
block
postfix00N/A
̑ U+0311ブロック軸
block
postfix00N/A
’ U+2019ブロック軸
block
postfix00fence
‚ U+201Aブロック軸
block
postfix00N/A
‛ U+201Bブロック軸
block
postfix00N/A
” U+201Dブロック軸
block
postfix00fence
„ U+201Eブロック軸
block
postfix00N/A
‟ U+201Fブロック軸
block
postfix00N/A
′ U+2032ブロック軸
block
postfix00N/A
″ U+2033ブロック軸
block
postfix00N/A
‴ U+2034ブロック軸
block
postfix00N/A
‵ U+2035ブロック軸
block
postfix00N/A
‶ U+2036ブロック軸
block
postfix00N/A
‷ U+2037ブロック軸
block
postfix00N/A
⁗ U+2057ブロック軸
block
postfix00N/A
⃛ U+20DBブロック軸
block
postfix00N/A
⃜ U+20DCブロック軸
block
postfix00N/A
⏍ U+23CDブロック軸
block
postfix00N/A
文字列 !! U+0021 U+0021
String
ブロック軸
block
postfix00N/A
文字列 ++ U+002B U+002B
String
ブロック軸
block
postfix00N/A
文字列 -- U+002D U+002D
String
ブロック軸
block
postfix00N/A
文字列 || U+007C U+007C
String
ブロック軸
block
postfix00fence
( U+0028ブロック軸
block
prefix00stretchy symmetric fence
[ U+005Bブロック軸
block
prefix00stretchy symmetric fence
{ U+007Bブロック軸
block
prefix00stretchy symmetric fence
| U+007Cブロック軸
block
prefix00stretchy symmetric fence
‖ U+2016ブロック軸
block
prefix00stretchy symmetric fence
⌈ U+2308ブロック軸
block
prefix00stretchy symmetric fence
⌊ U+230Aブロック軸
block
prefix00stretchy symmetric fence
〈 U+2329ブロック軸
block
prefix00stretchy symmetric fence
❲ U+2772ブロック軸
block
prefix00stretchy symmetric fence
⟦ U+27E6ブロック軸
block
prefix00stretchy symmetric fence
⟨ U+27E8ブロック軸
block
prefix00stretchy symmetric fence
⟪ U+27EAブロック軸
block
prefix00stretchy symmetric fence
⟬ U+27ECブロック軸
block
prefix00stretchy symmetric fence
⟮ U+27EEブロック軸
block
prefix00stretchy symmetric fence
⦀ U+2980ブロック軸
block
prefix00stretchy symmetric fence
⦃ U+2983ブロック軸
block
prefix00stretchy symmetric fence
⦅ U+2985ブロック軸
block
prefix00stretchy symmetric fence
⦇ U+2987ブロック軸
block
prefix00stretchy symmetric fence
⦉ U+2989ブロック軸
block
prefix00stretchy symmetric fence
⦋ U+298Bブロック軸
block
prefix00stretchy symmetric fence
⦍ U+298Dブロック軸
block
prefix00stretchy symmetric fence
⦏ U+298Fブロック軸
block
prefix00stretchy symmetric fence
⦑ U+2991ブロック軸
block
prefix00stretchy symmetric fence
⦓ U+2993ブロック軸
block
prefix00stretchy symmetric fence
⦕ U+2995ブロック軸
block
prefix00stretchy symmetric fence
⦗ U+2997ブロック軸
block
prefix00stretchy symmetric fence
⦙ U+2999ブロック軸
block
prefix00stretchy symmetric fence
⧘ U+29D8ブロック軸
block
prefix00stretchy symmetric fence
⧚ U+29DAブロック軸
block
prefix00stretchy symmetric fence
⧼ U+29FCブロック軸
block
prefix00stretchy symmetric fence
) U+0029ブロック軸
block
postfix00stretchy symmetric fence
] U+005Dブロック軸
block
postfix00stretchy symmetric fence
| U+007Cブロック軸
block
postfix00stretchy symmetric fence
} U+007Dブロック軸
block
postfix00stretchy symmetric fence
‖ U+2016ブロック軸
block
postfix00stretchy symmetric fence
⌉ U+2309ブロック軸
block
postfix00stretchy symmetric fence
⌋ U+230Bブロック軸
block
postfix00stretchy symmetric fence
〉 U+232Aブロック軸
block
postfix00stretchy symmetric fence
❳ U+2773ブロック軸
block
postfix00stretchy symmetric fence
⟧ U+27E7ブロック軸
block
postfix00stretchy symmetric fence
⟩ U+27E9ブロック軸
block
postfix00stretchy symmetric fence
⟫ U+27EBブロック軸
block
postfix00stretchy symmetric fence
⟭ U+27EDブロック軸
block
postfix00stretchy symmetric fence
⟯ U+27EFブロック軸
block
postfix00stretchy symmetric fence
⦀ U+2980ブロック軸
block
postfix00stretchy symmetric fence
⦄ U+2984ブロック軸
block
postfix00stretchy symmetric fence
⦆ U+2986ブロック軸
block
postfix00stretchy symmetric fence
⦈ U+2988ブロック軸
block
postfix00stretchy symmetric fence
⦊ U+298Aブロック軸
block
postfix00stretchy symmetric fence
⦌ U+298Cブロック軸
block
postfix00stretchy symmetric fence
⦎ U+298Eブロック軸
block
postfix00stretchy symmetric fence
⦐ U+2990ブロック軸
block
postfix00stretchy symmetric fence
⦒ U+2992ブロック軸
block
postfix00stretchy symmetric fence
⦔ U+2994ブロック軸
block
postfix00stretchy symmetric fence
⦖ U+2996ブロック軸
block
postfix00stretchy symmetric fence
⦘ U+2998ブロック軸
block
postfix00stretchy symmetric fence
⦙ U+2999ブロック軸
block
postfix00stretchy symmetric fence
⧙ U+29D9ブロック軸
block
postfix00stretchy symmetric fence
⧛ U+29DBブロック軸
block
postfix00stretchy symmetric fence
⧽ U+29FDブロック軸
block
postfix00stretchy symmetric fence
∫ U+222Bブロック軸
block
prefix0.16666666666666666em0.16666666666666666emsymmetric largeop
∬ U+222Cブロック軸
block
prefix0.16666666666666666em0.16666666666666666emsymmetric largeop
∭ U+222Dブロック軸
block
prefix0.16666666666666666em0.16666666666666666emsymmetric largeop
∮ U+222Eブロック軸
block
prefix0.16666666666666666em0.16666666666666666emsymmetric largeop
∯ U+222Fブロック軸
block
prefix0.16666666666666666em0.16666666666666666emsymmetric largeop
∰ U+2230ブロック軸
block
prefix0.16666666666666666em0.16666666666666666emsymmetric largeop
∱ U+2231ブロック軸
block
prefix0.16666666666666666em0.16666666666666666emsymmetric largeop
∲ U+2232ブロック軸
block
prefix0.16666666666666666em0.16666666666666666emsymmetric largeop
∳ U+2233ブロック軸
block
prefix0.16666666666666666em0.16666666666666666emsymmetric largeop
⨋ U+2A0Bブロック軸
block
prefix0.16666666666666666em0.16666666666666666emsymmetric largeop
⨌ U+2A0Cブロック軸
block
prefix0.16666666666666666em0.16666666666666666emsymmetric largeop
⨍ U+2A0Dブロック軸
block
prefix0.16666666666666666em0.16666666666666666emsymmetric largeop
⨎ U+2A0Eブロック軸
block
prefix0.16666666666666666em0.16666666666666666emsymmetric largeop
⨏ U+2A0Fブロック軸
block
prefix0.16666666666666666em0.16666666666666666emsymmetric largeop
⨐ U+2A10ブロック軸
block
prefix0.16666666666666666em0.16666666666666666emsymmetric largeop
⨑ U+2A11ブロック軸
block
prefix0.16666666666666666em0.16666666666666666emsymmetric largeop
⨒ U+2A12ブロック軸
block
prefix0.16666666666666666em0.16666666666666666emsymmetric largeop
⨓ U+2A13ブロック軸
block
prefix0.16666666666666666em0.16666666666666666emsymmetric largeop
⨔ U+2A14ブロック軸
block
prefix0.16666666666666666em0.16666666666666666emsymmetric largeop
⨕ U+2A15ブロック軸
block
prefix0.16666666666666666em0.16666666666666666emsymmetric largeop
⨖ U+2A16ブロック軸
block
prefix0.16666666666666666em0.16666666666666666emsymmetric largeop
⨗ U+2A17ブロック軸
block
prefix0.16666666666666666em0.16666666666666666emsymmetric largeop
⨘ U+2A18ブロック軸
block
prefix0.16666666666666666em0.16666666666666666emsymmetric largeop
⨙ U+2A19ブロック軸
block
prefix0.16666666666666666em0.16666666666666666emsymmetric largeop
⨚ U+2A1Aブロック軸
block
prefix0.16666666666666666em0.16666666666666666emsymmetric largeop
⨛ U+2A1Bブロック軸
block
prefix0.16666666666666666em0.16666666666666666emsymmetric largeop
⨜ U+2A1Cブロック軸
block
prefix0.16666666666666666em0.16666666666666666emsymmetric largeop
^ U+005E行内軸
inline
postfix00stretchy
_ U+005F行内軸
inline
postfix00stretchy
~ U+007E行内軸
inline
postfix00stretchy
¯ U+00AF行内軸
inline
postfix00stretchy
ˆ U+02C6行内軸
inline
postfix00stretchy
ˇ U+02C7行内軸
inline
postfix00stretchy
ˉ U+02C9行内軸
inline
postfix00stretchy
ˍ U+02CD行内軸
inline
postfix00stretchy
˜ U+02DC行内軸
inline
postfix00stretchy
˷ U+02F7行内軸
inline
postfix00stretchy
̂ U+0302行内軸
inline
postfix00stretchy
‾ U+203E行内軸
inline
postfix00stretchy
⌢ U+2322行内軸
inline
postfix00stretchy
⌣ U+2323行内軸
inline
postfix00stretchy
⎴ U+23B4行内軸
inline
postfix00stretchy
⎵ U+23B5行内軸
inline
postfix00stretchy
⏜ U+23DC行内軸
inline
postfix00stretchy
⏝ U+23DD行内軸
inline
postfix00stretchy
⏞ U+23DE行内軸
inline
postfix00stretchy
⏟ U+23DF行内軸
inline
postfix00stretchy
⏠ U+23E0行内軸
inline
postfix00stretchy
⏡ U+23E1行内軸
inline
postfix00stretchy
𞻰 U+1EEF0行内軸
inline
postfix00stretchy
𞻱 U+1EEF1行内軸
inline
postfix00stretchy
∏ U+220Fブロック軸
block
prefix0.16666666666666666em0.16666666666666666emsymmetric largeop movablelimits
∐ U+2210ブロック軸
block
prefix0.16666666666666666em0.16666666666666666emsymmetric largeop movablelimits
∑ U+2211ブロック軸
block
prefix0.16666666666666666em0.16666666666666666emsymmetric largeop movablelimits
⋀ U+22C0ブロック軸
block
prefix0.16666666666666666em0.16666666666666666emsymmetric largeop movablelimits
⋁ U+22C1ブロック軸
block
prefix0.16666666666666666em0.16666666666666666emsymmetric largeop movablelimits
⋂ U+22C2ブロック軸
block
prefix0.16666666666666666em0.16666666666666666emsymmetric largeop movablelimits
⋃ U+22C3ブロック軸
block
prefix0.16666666666666666em0.16666666666666666emsymmetric largeop movablelimits
⨀ U+2A00ブロック軸
block
prefix0.16666666666666666em0.16666666666666666emsymmetric largeop movablelimits
⨁ U+2A01ブロック軸
block
prefix0.16666666666666666em0.16666666666666666emsymmetric largeop movablelimits
⨂ U+2A02ブロック軸
block
prefix0.16666666666666666em0.16666666666666666emsymmetric largeop movablelimits
⨃ U+2A03ブロック軸
block
prefix0.16666666666666666em0.16666666666666666emsymmetric largeop movablelimits
⨄ U+2A04ブロック軸
block
prefix0.16666666666666666em0.16666666666666666emsymmetric largeop movablelimits
⨅ U+2A05ブロック軸
block
prefix0.16666666666666666em0.16666666666666666emsymmetric largeop movablelimits
⨆ U+2A06ブロック軸
block
prefix0.16666666666666666em0.16666666666666666emsymmetric largeop movablelimits
⨇ U+2A07ブロック軸
block
prefix0.16666666666666666em0.16666666666666666emsymmetric largeop movablelimits
⨈ U+2A08ブロック軸
block
prefix0.16666666666666666em0.16666666666666666emsymmetric largeop movablelimits
⨉ U+2A09ブロック軸
block
prefix0.16666666666666666em0.16666666666666666emsymmetric largeop movablelimits
⨊ U+2A0Aブロック軸
block
prefix0.16666666666666666em0.16666666666666666emsymmetric largeop movablelimits
⨝ U+2A1Dブロック軸
block
prefix0.16666666666666666em0.16666666666666666emsymmetric largeop movablelimits
⨞ U+2A1Eブロック軸
block
prefix0.16666666666666666em0.16666666666666666emsymmetric largeop movablelimits
⫼ U+2AFCブロック軸
block
prefix0.16666666666666666em0.16666666666666666emsymmetric largeop movablelimits
⫿ U+2AFFブロック軸
block
prefix0.16666666666666666em0.16666666666666666emsymmetric largeop movablelimits
\ U+005Cブロック軸
block
infix00N/A
_ U+005F行内軸
inline
infix00N/A
⁡ U+2061ブロック軸
block
infix00N/A
⁢ U+2062ブロック軸
block
infix00N/A
⁣ U+2063ブロック軸
block
infix00separator
⁤ U+2064ブロック軸
block
infix00N/A
∆ U+2206ブロック軸
block
infix00N/A
ⅅ U+2145ブロック軸
block
prefix0.16666666666666666em0N/A
ⅆ U+2146ブロック軸
block
prefix0.16666666666666666em0N/A
∂ U+2202ブロック軸
block
prefix0.16666666666666666em0N/A
√ U+221Aブロック軸
block
prefix0.16666666666666666em0N/A
∛ U+221Bブロック軸
block
prefix0.16666666666666666em0N/A
∜ U+221Cブロック軸
block
prefix0.16666666666666666em0N/A
, U+002Cブロック軸
block
infix00.16666666666666666emseparator
: U+003Aブロック軸
block
infix00.16666666666666666emN/A
; U+003Bブロック軸
block
infix00.16666666666666666emseparator
29 演算子(Content, Form)とプロパティの対応.
全体の大きさ: 1177個の登録データ, ≥ 3679バイト
(想定している'Content'は少なくとも1個のUTF-16の文字, '伸長軸'が1ビット, 'Form'が2ビット,t'rspace'と'space'のいろいろな組合せに少なくとも3ビット, プロパティのいろいろな組合せに3ビット).

Figure 29 Mapping from operator (Content, Form) to properties.
Total size: 1177 entries, ≥ 3679 bytes
(assuming 'Content' uses at least one UTF-16 character, 'Stretch Axis' 1 bit, 'Form' 2 bits, the different combinations of 'rspace' and 'space' at least 3 bits, and the different combinations of properties 3 bits).

B.3 同値の合成文字
Combining Character Equivalences

この節は規範ではありません.

This section is non-normative.

次の表は, MathMLのアクセントの構成で使用される場合の, 前進を伴う修飾文字と前進を伴わない文字の対応を示しています.

The following table gives mappings between spacing and non spacing characters when used in MathML accent constructs.

合成
Combining

非合成
Non Combining
書式
Style
合成
Combining
U+002Bプラス記号
plus sign
下側
below
U+031F合成用下側プラス記号
combining plus sign below
U+002Dハイフンマイナス
hyphen-minus
上側
above
U+0305合成用上線
combining overline
U+002Dハイフンマイナス
hyphen-minus
下側
below
U+0320合成用下側マイナス記号
combining minus sign below
U+002Dハイフンマイナス
hyphen-minus
下側
below
U+0332合成用下線
combining low line
U+002E終止符
full stop
上側
above
U+0307合成用上の点
combining dot above
U+002E終止符
full stop
下側
below
U+0323合成用下の点
combining dot below
U+005Eサーカムフレックスアクセント
circumflex accent
上側
above
U+0302合成用サーカムフレックスアクセント
combining circumflex accent
U+005Eサーカムフレックスアクセント
circumflex accent
下側
below
U+032D合成用下側サーカムフレックスアクセント
combining circumflex accent below
U+005F下線
low line
下側
below
U+0332合成用下線
combining low line
U+0060グレーブアクセント
grave accent
上側
above
U+0300合成用グレーブアクセント
combining grave accent
U+0060グレーブアクセント
grave accent
下側
below
U+0316合成用下側グレーブアクセント
combining grave accent below
U+007Eチルダ
tilde
上側
above
U+0303合成用チルダ
combining tilde
U+007Eチルダ
tilde
下側
below
U+0330合成用下側チルダ
combining tilde below
U+00A8ダイエレシス
diaeresis
上側
above
U+0308合成用ダイエレシス
combining diaeresis
U+00A8ダイエレシス
diaeresis
下側
below
U+0324合成用下側ダイエレシス
combining diaeresis below
U+00AFマクロン
macron
上側
above
U+0304合成用マクロン
combining macron
U+00AFマクロン
macron
上側
above
U+0305合成用上線
combining overline
U+00B4アキュートアクセント
acute accent
上側
above
U+0301合成用アキュートアクセント
combining acute accent
U+00B4アキュートアクセント
acute accent
下側
below
U+0317合成用下側アキュートアクセント
combining acute accent below
U+00B8セディラ
cedilla
下側
below
U+0327合成用セディラ
combining cedilla
U+02C6修飾文字サーカムフレックスアクセント
modifier letter circumflex accent
上側
above
U+0302合成用サーカムフレックスアクセント
combining circumflex accent
U+02C7キャロン
caron
上側
above
U+030C合成用キャロン
combining caron
U+02C7キャロン
caron
下側
below
U+032C合成用下側キャロン
combining caron below
U+02D8ブリーブ
breve
上側
above
U+0306合成用ブリーブ
combining breve
U+02D8ブリーブ
breve
下側
below
U+032E合成用下側ブリーブ
combining breve below
U+02D9上の点
dot above
上側
above
U+0307合成用上の点
combining dot above
U+02D9上の点
dot above
下側
below
U+0323合成用下の点
combining dot below
U+02DBオゴネク
ogonek
下側
below
U+0328合成用オゴネク
combining ogonek
U+02DC小さいチルダ
small tilde
上側
above
U+0303合成用チルダ
combining tilde
U+02DC小さいチルダ
small tilde
下側
below
U+0330合成用下側チルダ
combining tilde below
U+02DDダブルアキュートアクセント
double acute accent
上側
above
U+030B合成用ダブルアキュートアクセント
combining double acute accent
U+203E上線
overline
上側
above
U+0305合成用上線
combining overline
U+2190左向き矢印
leftwards arrow
上側
above
U+20D6
U+2192右向き矢印
rightwards arrow
上側
above
U+20D7合成用上側右向き矢印
combining right arrow above
U+2192右向き矢印
rightwards arrow
上側
above
U+20EF合成用下側右向き矢印
combining right arrow below
U+2212マイナス記号
minus sign
上側
above
U+0305合成用上線
combining overline
U+2212マイナス記号
minus sign
下側
below
U+0332合成用下線
combining low line
U+27F6長い右向き矢印
long rightwards arrow
上側
above
U+20D7合成用上側右向き矢印
combining right arrow above
U+27F6長い右向き矢印
long rightwards arrow
上側
above
U+20EF合成用下側右向き矢印
combining right arrow below

非合成
Non Combining

合成
Combining
書式
Style
非合成
Non Combining
U+0300合成用グレーブアクセント
combining grave accent
上側
above
U+0060グレーブアクセント
grave accent
U+0301合成用アキュートアクセント
combining acute accent
上側
above
U+00B4アキュートアクセント
acute accent
U+0302合成用サーカムフレックスアクセント
combining circumflex accent
上側
above
U+005Eサーカムフレックスアクセント
circumflex accent
U+0302合成用サーカムフレックスアクセント
combining circumflex accent
上側
above
U+02C6修飾文字サーカムフレックスアクセント
modifier letter circumflex accent
U+0303合成用チルダ
combining tilde
上側
above
U+007Eチルダ
tilde
U+0303合成用チルダ
combining tilde
上側
above
U+02DC小さいチルダ
small tilde
U+0304合成用マクロン
combining macron
上側
above
U+00AFマクロン
macron
U+0305合成用上線
combining overline
上側
above
U+002Dハイフンマイナス
hyphen-minus
U+0305合成用上線
combining overline
上側
above
U+00AFマクロン
macron
U+0305合成用上線
combining overline
上側
above
U+203E上線
overline
U+0305合成用上線
combining overline
上側
above
U+2212マイナス記号
minus sign
U+0306合成用ブリーブ
combining breve
上側
above
U+02D8ブリーブ
breve
U+0307合成用上の点
combining dot above
上側
above
U+02E
U+0307合成用上の点
combining dot above
上側
above
U+002E終止符
full stop
U+0307合成用上の点
combining dot above
上側
above
U+02D9上の点
dot above
U+0308合成用ダイエレシス
combining diaeresis
上側
above
U+00A8ダイエレシス
diaeresis
U+030B合成用ダブルアキュートアクセント
combining double acute accent
上側
above
U+02DDダブルアキュートアクセント
double acute accent
U+030C合成用キャロン
combining caron
上側
above
U+02C7キャロン
caron
U+0312合成用上側ひっくり返ったコンマ
combining turned comma above
上側
above
U+0B8
U+0316合成用下側グレーブアクセント
combining grave accent below
下側
below
U+0060グレーブアクセント
grave accent
U+0317合成用下側アキュートアクセント
combining acute accent below
下側
below
U+00B4アキュートアクセント
acute accent
U+031F合成用下側プラス記号
combining plus sign below
下側
below
U+002Bプラス記号
plus sign
U+0320合成用下側マイナス記号
combining minus sign below
下側
below
U+002Dハイフンマイナス
hyphen-minus
U+0323合成用下の点
combining dot below
下側
below
U+002E終止符
full stop
U+0323合成用下の点
combining dot below
下側
below
U+02D9上の点
dot above
U+0324合成用下側ダイエレシス
combining diaeresis below
下側
below
U+00A8ダイエレシス
diaeresis
U+0327合成用セディラ
combining cedilla
下側
below
U+00B8セディラ
cedilla
U+0328合成用オゴネク
combining ogonek
下側
below
U+02DBオゴネク
ogonek
U+032C合成用下側キャロン
combining caron below
下側
below
U+02C7キャロン
caron
U+032D合成用下側サーカムフレックスアクセント
combining circumflex accent below
下側
below
U+005Eサーカムフレックスアクセント
circumflex accent
U+032E合成用下側ブリーブ
combining breve below
下側
below
U+02D8ブリーブ
breve
U+0330合成用下側チルダ
combining tilde below
下側
below
U+007Eチルダ
tilde
U+0330合成用下側チルダ
combining tilde below
下側
below
U+02DC小さいチルダ
small tilde
U+0332合成用下線
combining low line
下側
below
U+002Dハイフンマイナス
hyphen-minus
U+0332合成用下線
combining low line
下側
below
U+005F下線
low line
U+0332合成用下線
combining low line
下側
below
U+2212マイナス記号
minus sign
U+0338文字に合成する長い斜線
combining long solidus overlay
重なる
over
U+02F
U+20D7合成用上側右向き矢印
combining right arrow above
上側
above
U+2192右向き矢印
rightwards arrow
U+20D7合成用上側右向き矢印
combining right arrow above
上側
above
U+27F6長い右向き矢印
long rightwards arrow
U+20EF合成用下側右向き矢印
combining right arrow below
上側
above
U+2192右向き矢印
rightwards arrow
U+20EF合成用下側右向き矢印
combining right arrow below
上側
above
U+27F6長い右向き矢印
long rightwards arrow

B.4 ユニコードを基にした組立字形
Unicode-based Glyph Assemblies

この節は規範ではありません.

This section is non-normative.

次に示す表は, フォントがMATH.MathVariantsテーブルを提供しない場合に, ユーザーエージェントが与えられた基となる文字を伸長するために使用してもよい予備の仕組みを提供します. 5.3 演算子に対する大きさの異体字(MathVariants)のアルゴリズムが, 次のいくつかの調整を除いて同じように働きます.

The following table provides fallback that user agents may use for stretching a given base character when the font does not provide a MATH.MathVariants table. The algorithms of 5.3 Size variants for operators (MathVariants) work the same except with some adjustments:

基となる文字
Base Character
字形の構成
Glyph Construction
エクステンダ文字
Extender Character
下端/左端の文字
Bottom/Left Character
真ん中の文字
Middle Character
上端/右端の文字
Top/Right Character
U+0028 ( 鉛直方向
Vertical
U+239C ⎜ U+239D ⎝ N/A U+239B ⎛
U+0029 ) 鉛直方向
Vertical
U+239F ⎟ U+23A0 ⎠ N/A U+239E ⎞
U+003D = 水平方向
Horizontal
U+003D = U+003D = N/A N/A
U+005B [ 鉛直方向
Vertical
U+23A2 ⎢ U+23A3 ⎣ N/A U+23A1 ⎡
U+005D ] 鉛直方向
Vertical
U+23A5 ⎥ U+23A6 ⎦ N/A U+23A4 ⎤
U+005F _ 水平方向
Horizontal
U+005F _ U+005F _ N/A N/A
U+007B { 鉛直方向
Vertical
U+23AA ⎪ U+23A9 ⎩ U+23A8 ⎨ U+23A7 ⎧
U+007C | 鉛直方向
Vertical
U+007C | U+007C | N/A N/A
U+007D } 鉛直方向
Vertical
U+23AA ⎪ U+23AD ⎭ U+23AC ⎬ U+23AB ⎫
U+00AF ¯ 水平方向
Horizontal
U+00AF ¯ U+00AF ¯ N/A N/A
U+2016 ‖ 鉛直方向
Vertical
U+2016 ‖ U+2016 ‖ N/A N/A
U+203E ‾ 水平方向
Horizontal
U+203E ‾ U+203E ‾ N/A N/A
U+2190 ← 水平方向
Horizontal
U+23AF ⎯ U+2190 ← N/A U+23AF ⎯
U+2191 ↑ 鉛直方向
Vertical
U+23D0 ⏐ U+23D0 ⏐ N/A U+2191 ↑
U+2192 → 水平方向
Horizontal
U+23AF ⎯ U+23AF ⎯ N/A U+2192 →
U+2193 ↓ 鉛直方向
Vertical
U+23D0 ⏐ U+2193 ↓ N/A U+23D0 ⏐
U+2194 ↔ 水平方向
Horizontal
U+23AF ⎯ U+2190 ← N/A U+2192 →
U+2195 ↕ 鉛直方向
Vertical
U+23D0 ⏐ U+2193 ↓ N/A U+2191 ↑
U+21A4 ↤ 水平方向
Horizontal
U+23AF ⎯ U+2190 ← N/A U+22A3 ⊣
U+21A6 ↦ 水平方向
Horizontal
U+23AF ⎯ U+22A2 ⊢ N/A U+2192 →
U+21BC ↼ 水平方向
Horizontal
U+23AF ⎯ U+21BC ↼ N/A U+23AF ⎯
U+21BD ↽ 水平方向
Horizontal
U+23AF ⎯ U+21BD ↽ N/A U+23AF ⎯
U+21C0 ⇀ 水平方向
Horizontal
U+23AF ⎯ U+23AF ⎯ N/A U+21C0 ⇀
U+21C1 ⇁ 水平方向
Horizontal
U+23AF ⎯ U+23AF ⎯ N/A U+21C1 ⇁
U+2223 ∣ 鉛直方向
Vertical
U+2223 ∣ U+2223 ∣ N/A N/A
U+2225 ∥ 鉛直方向
Vertical
U+2225 ∥ U+2225 ∥ N/A N/A
U+2308 ⌈ 鉛直方向
Vertical
U+23A2 ⎢ U+23A2 ⎢ N/A U+23A1 ⎡
U+2309 ⌉ 鉛直方向
Vertical
U+23A5 ⎥ U+23A5 ⎥ N/A U+23A4 ⎤
U+230A ⌊ 鉛直方向
Vertical
U+23A2 ⎢ U+23A3 ⎣ N/A N/A
U+230B ⌋ 鉛直方向
Vertical
U+23A5 ⎥ U+23A6 ⎦ N/A N/A
U+23B0 ⎰ 鉛直方向
Vertical
U+23AA ⎪ U+23AD ⎭ N/A U+23A7 ⎧
U+23B1 ⎱ 鉛直方向
Vertical
U+23AA ⎪ U+23A9 ⎩ N/A U+23AB ⎫
U+27F5 ⟵ 水平方向
Horizontal
U+23AF ⎯ U+2190 ← N/A U+23AF ⎯
U+27F6 ⟶ 水平方向
Horizontal
U+23AF ⎯ U+23AF ⎯ N/A U+2192 →
U+27F7 ⟷ 水平方向
Horizontal
U+23AF ⎯ U+2190 ← N/A U+2192 →
U+294E ⥎ 水平方向
Horizontal
U+23AF ⎯ U+21BC ↼ N/A U+21C0 ⇀
U+2950 ⥐ 水平方向
Horizontal
U+23AF ⎯ U+21BD ↽ N/A U+21C1 ⇁
U+295A ⥚ 水平方向
Horizontal
U+23AF ⎯ U+21BC ↼ N/A U+22A3 ⊣
U+295B ⥛ 水平方向
Horizontal
U+23AF ⎯ U+22A2 ⊢ N/A U+21C0 ⇀
U+295E ⥞ 水平方向
Horizontal
U+23AF ⎯ U+21BD ↽ N/A U+22A3 ⊣
U+295F ⥟ 水平方向
Horizontal
U+23AF ⎯ U+22A2 ⊢ N/A U+21C1 ⇁

C. 数学用英数字記号
Mathematical Alphanumeric Symbols

次の表は, ユニコードで利用可能な太字, イタリック体, フラクタル, 等幅フォント, 二重線などの数学用英数字記号を列挙しています. これらの各表は, 通常の書式の文字と, 変換した文字と元の文字との間のコードポイントの差を提供しています.

The following tables enumerate the mathematical alphanumeric symbols with form bold, italic, fraktur, monospace, double-struck etc that are available in Unicode. For each of them, the character in its normal form is provided as well as the difference between the code points of the transformed and original characters.

注意
Note
このコードポイントの差は, 実装を単純化するのに利用できます. 例えば, イタリック体の対応表において, 大文字のラテン文字のコードポイントは0x1D3F3増やしたもの, 小文字のラテン文字のコードポイントは(一般に)1D3ED増やしたものなどで, 例外は別個に処理できます.
This difference can be used to simplify implementations. For example for italic mappings, the code point of a uppercase latin letter is increased by 0x1D3F3, the code point of a lowercase latin letter is (generally) increased by 1D3ED, etc and the exceptions can be handled separately.
注意
Note

ときどき, 数学用スクリプト文字に対する, チャンセリーとラウンドハンドの違いを区別することが必要です. これらは, LaTeXにおいて\mathcalコマンドと\mathscrコマンドによって明白に使い分けられます.

It is sometimes needed to distinguish between Chancery and Roundhand style for MATHEMATICAL SCRIPT characters. These are notably used in LaTeX for the \mathcal and \mathscr commands.

区別する1つの方法は, 特定の字形の異体字を選択する方法について述べた第23.4章 ユニコードの異体字選択用文字[ユニコード]を頼ることです. 実際は, 異体字選択用文字U+FE00と異体字選択用文字U+FE01が, 大文字のスクリプトにおいてチャンセリーとラウンドハンドをそれぞれ指定するのに使用できることを, ユニコード文字データベースからのStandardizedVariants.txtファイルが指し示します.

One way to do that is to rely on Chapter 23.4 Variation Selectors of Unicode which describes a way to specify selection of particular glyph variants [UNICODE]. Indeed, the StandardizedVariants.txt file from the Unicode Character Database indicates that variant selectors U+FE00 and U+FE01 can be used on capital script to specify Chancery and Roundhand respectively.

代わりに, 数学フォントの中には, 両方の書体を提供するのに[OPEN-FONT-FORMAT]でのsaltプロパティまたはssXYプロパティを頼るものものもあります. ページの著者は, これらの字形を利用するのに対応するOpenTypeフォントの機能であるfont-variant-alternatesプロパティを使用してもよいです.

Alternatively, some mathematical fonts rely on salt or ssXY properties from [OPEN-FONT-FORMAT] to provide both styles. Page authors may use the font-variant-alternates property with corresponding OpenType font features to access these glyphs.

C.1 bold-scriptの対応表
bold-script mappings

この節は規範ではありません.

This section is non-normative.

元の文字
Original
bold-scriptコードポイントの差
Δcode point
A U+0041𝓐 U+1D4D01D48F
B U+0042𝓑 U+1D4D11D48F
C U+0043𝓒 U+1D4D21D48F
D U+0044𝓓 U+1D4D31D48F
E U+0045𝓔 U+1D4D41D48F
F U+0046𝓕 U+1D4D51D48F
G U+0047𝓖 U+1D4D61D48F
H U+0048𝓗 U+1D4D71D48F
I U+0049𝓘 U+1D4D81D48F
J U+004A𝓙 U+1D4D91D48F
K U+004B𝓚 U+1D4DA1D48F
L U+004C𝓛 U+1D4DB1D48F
M U+004D𝓜 U+1D4DC1D48F
N U+004E𝓝 U+1D4DD1D48F
O U+004F𝓞 U+1D4DE1D48F
P U+0050𝓟 U+1D4DF1D48F
Q U+0051𝓠 U+1D4E01D48F
R U+0052𝓡 U+1D4E11D48F
S U+0053𝓢 U+1D4E21D48F
T U+0054𝓣 U+1D4E31D48F
U U+0055𝓤 U+1D4E41D48F
V U+0056𝓥 U+1D4E51D48F
W U+0057𝓦 U+1D4E61D48F
X U+0058𝓧 U+1D4E71D48F
Y U+0059𝓨 U+1D4E81D48F
Z U+005A𝓩 U+1D4E91D48F
a U+0061𝓪 U+1D4EA1D489
b U+0062𝓫 U+1D4EB1D489
c U+0063𝓬 U+1D4EC1D489
d U+0064𝓭 U+1D4ED1D489
e U+0065𝓮 U+1D4EE1D489
f U+0066𝓯 U+1D4EF1D489
g U+0067𝓰 U+1D4F01D489
h U+0068𝓱 U+1D4F11D489
i U+0069𝓲 U+1D4F21D489
j U+006A𝓳 U+1D4F31D489
k U+006B𝓴 U+1D4F41D489
l U+006C𝓵 U+1D4F51D489
m U+006D𝓶 U+1D4F61D489
n U+006E𝓷 U+1D4F71D489
o U+006F𝓸 U+1D4F81D489
p U+0070𝓹 U+1D4F91D489
q U+0071𝓺 U+1D4FA1D489
r U+0072𝓻 U+1D4FB1D489
s U+0073𝓼 U+1D4FC1D489
t U+0074𝓽 U+1D4FD1D489
u U+0075𝓾 U+1D4FE1D489
v U+0076𝓿 U+1D4FF1D489
w U+0077𝔀 U+1D5001D489
x U+0078𝔁 U+1D5011D489
y U+0079𝔂 U+1D5021D489
z U+007A𝔃 U+1D5031D489

C.2 bold-italicの対応表
bold-italic mappings

この節は規範ではありません.

This section is non-normative.

元の文字
Original
bold-italicコードポイントの差
Δcode point
A U+0041𝑨 U+1D4681D427
B U+0042𝑩 U+1D4691D427
C U+0043𝑪 U+1D46A1D427
D U+0044𝑫 U+1D46B1D427
E U+0045𝑬 U+1D46C1D427
F U+0046𝑭 U+1D46D1D427
G U+0047𝑮 U+1D46E1D427
H U+0048𝑯 U+1D46F1D427
I U+0049𝑰 U+1D4701D427
J U+004A𝑱 U+1D4711D427
K U+004B𝑲 U+1D4721D427
L U+004C𝑳 U+1D4731D427
M U+004D𝑴 U+1D4741D427
N U+004E𝑵 U+1D4751D427
O U+004F𝑶 U+1D4761D427
P U+0050𝑷 U+1D4771D427
Q U+0051𝑸 U+1D4781D427
R U+0052𝑹 U+1D4791D427
S U+0053𝑺 U+1D47A1D427
T U+0054𝑻 U+1D47B1D427
U U+0055𝑼 U+1D47C1D427
V U+0056𝑽 U+1D47D1D427
W U+0057𝑾 U+1D47E1D427
X U+0058𝑿 U+1D47F1D427
Y U+0059𝒀 U+1D4801D427
Z U+005A𝒁 U+1D4811D427
a U+0061𝒂 U+1D4821D421
b U+0062𝒃 U+1D4831D421
c U+0063𝒄 U+1D4841D421
d U+0064𝒅 U+1D4851D421
e U+0065𝒆 U+1D4861D421
f U+0066𝒇 U+1D4871D421
g U+0067𝒈 U+1D4881D421
h U+0068𝒉 U+1D4891D421
i U+0069𝒊 U+1D48A1D421
j U+006A𝒋 U+1D48B1D421
k U+006B𝒌 U+1D48C1D421
l U+006C𝒍 U+1D48D1D421
m U+006D𝒎 U+1D48E1D421
n U+006E𝒏 U+1D48F1D421
o U+006F𝒐 U+1D4901D421
p U+0070𝒑 U+1D4911D421
q U+0071𝒒 U+1D4921D421
r U+0072𝒓 U+1D4931D421
s U+0073𝒔 U+1D4941D421
t U+0074𝒕 U+1D4951D421
u U+0075𝒖 U+1D4961D421
v U+0076𝒗 U+1D4971D421
w U+0077𝒘 U+1D4981D421
x U+0078𝒙 U+1D4991D421
y U+0079𝒚 U+1D49A1D421
z U+007A𝒛 U+1D49B1D421
Α U+0391𝜜 U+1D71C1D38B
Β U+0392𝜝 U+1D71D1D38B
Γ U+0393𝜞 U+1D71E1D38B
Δ U+0394𝜟 U+1D71F1D38B
Ε U+0395𝜠 U+1D7201D38B
Ζ U+0396𝜡 U+1D7211D38B
Η U+0397𝜢 U+1D7221D38B
Θ U+0398𝜣 U+1D7231D38B
Ι U+0399𝜤 U+1D7241D38B
Κ U+039A𝜥 U+1D7251D38B
Λ U+039B𝜦 U+1D7261D38B
Μ U+039C𝜧 U+1D7271D38B
Ν U+039D𝜨 U+1D7281D38B
Ξ U+039E𝜩 U+1D7291D38B
Ο U+039F𝜪 U+1D72A1D38B
Π U+03A0𝜫 U+1D72B1D38B
Ρ U+03A1𝜬 U+1D72C1D38B
ϴ U+03F4𝜭 U+1D72D1D339
Σ U+03A3𝜮 U+1D72E1D38B
Τ U+03A4𝜯 U+1D72F1D38B
Υ U+03A5𝜰 U+1D7301D38B
Φ U+03A6𝜱 U+1D7311D38B
Χ U+03A7𝜲 U+1D7321D38B
Ψ U+03A8𝜳 U+1D7331D38B
Ω U+03A9𝜴 U+1D7341D38B
∇ U+2207𝜵 U+1D7351B52E
α U+03B1𝜶 U+1D7361D385
β U+03B2𝜷 U+1D7371D385
γ U+03B3𝜸 U+1D7381D385
δ U+03B4𝜹 U+1D7391D385
ε U+03B5𝜺 U+1D73A1D385
ζ U+03B6𝜻 U+1D73B1D385
η U+03B7𝜼 U+1D73C1D385
θ U+03B8𝜽 U+1D73D1D385
ι U+03B9𝜾 U+1D73E1D385
κ U+03BA𝜿 U+1D73F1D385
λ U+03BB𝝀 U+1D7401D385
μ U+03BC𝝁 U+1D7411D385
ν U+03BD𝝂 U+1D7421D385
ξ U+03BE𝝃 U+1D7431D385
ο U+03BF𝝄 U+1D7441D385
π U+03C0𝝅 U+1D7451D385
ρ U+03C1𝝆 U+1D7461D385
ς U+03C2𝝇 U+1D7471D385
σ U+03C3𝝈 U+1D7481D385
τ U+03C4𝝉 U+1D7491D385
υ U+03C5𝝊 U+1D74A1D385
φ U+03C6𝝋 U+1D74B1D385
χ U+03C7𝝌 U+1D74C1D385
ψ U+03C8𝝍 U+1D74D1D385
ω U+03C9𝝎 U+1D74E1D385
∂ U+2202𝝏 U+1D74F1B54D
ϵ U+03F5𝝐 U+1D7501D35B
ϑ U+03D1𝝑 U+1D7511D380
ϰ U+03F0𝝒 U+1D7521D362
ϕ U+03D5𝝓 U+1D7531D37E
ϱ U+03F1𝝔 U+1D7541D363
ϖ U+03D6𝝕 U+1D7551D37F

C.3 tailedの対応表
tailed mappings

この節は規範ではありません.

This section is non-normative.

元の文字
Original
tailedコードポイントの差
Δcode point
ج U+062C𞹂 U+1EE421E816
ح U+062D𞹇 U+1EE471E81A
ي U+064A𞹉 U+1EE491E7FF
ل U+0644𞹋 U+1EE4B1E807
ن U+0646𞹍 U+1EE4D1E807
س U+0633𞹎 U+1EE4E1E81B
ع U+0639𞹏 U+1EE4F1E816
ص U+0635𞹑 U+1EE511E81C
ق U+0642𞹒 U+1EE521E810
ش U+0634𞹔 U+1EE541E820
خ U+062E𞹗 U+1EE571E829
ض U+0636𞹙 U+1EE591E823
غ U+063A𞹛 U+1EE5B1E821
ں U+06BA𞹝 U+1EE5D1E7A3
ٯ U+066F𞹟 U+1EE5F1E7F0

C.4 boldの対応表
bold mappings

この節は規範ではありません.

This section is non-normative.

元の文字
Original
boldコードポイントの差
Δcode point
A U+0041𝐀 U+1D4001D3BF
B U+0042𝐁 U+1D4011D3BF
C U+0043𝐂 U+1D4021D3BF
D U+0044𝐃 U+1D4031D3BF
E U+0045𝐄 U+1D4041D3BF
F U+0046𝐅 U+1D4051D3BF
G U+0047𝐆 U+1D4061D3BF
H U+0048𝐇 U+1D4071D3BF
I U+0049𝐈 U+1D4081D3BF
J U+004A𝐉 U+1D4091D3BF
K U+004B𝐊 U+1D40A1D3BF
L U+004C𝐋 U+1D40B1D3BF
M U+004D𝐌 U+1D40C1D3BF
N U+004E𝐍 U+1D40D1D3BF
O U+004F𝐎 U+1D40E1D3BF
P U+0050𝐏 U+1D40F1D3BF
Q U+0051𝐐 U+1D4101D3BF
R U+0052𝐑 U+1D4111D3BF
S U+0053𝐒 U+1D4121D3BF
T U+0054𝐓 U+1D4131D3BF
U U+0055𝐔 U+1D4141D3BF
V U+0056𝐕 U+1D4151D3BF
W U+0057𝐖 U+1D4161D3BF
X U+0058𝐗 U+1D4171D3BF
Y U+0059𝐘 U+1D4181D3BF
Z U+005A𝐙 U+1D4191D3BF
a U+0061𝐚 U+1D41A1D3B9
b U+0062𝐛 U+1D41B1D3B9
c U+0063𝐜 U+1D41C1D3B9
d U+0064𝐝 U+1D41D1D3B9
e U+0065𝐞 U+1D41E1D3B9
f U+0066𝐟 U+1D41F1D3B9
g U+0067𝐠 U+1D4201D3B9
h U+0068𝐡 U+1D4211D3B9
i U+0069𝐢 U+1D4221D3B9
j U+006A𝐣 U+1D4231D3B9
k U+006B𝐤 U+1D4241D3B9
l U+006C𝐥 U+1D4251D3B9
m U+006D𝐦 U+1D4261D3B9
n U+006E𝐧 U+1D4271D3B9
o U+006F𝐨 U+1D4281D3B9
p U+0070𝐩 U+1D4291D3B9
q U+0071𝐪 U+1D42A1D3B9
r U+0072𝐫 U+1D42B1D3B9
s U+0073𝐬 U+1D42C1D3B9
t U+0074𝐭 U+1D42D1D3B9
u U+0075𝐮 U+1D42E1D3B9
v U+0076𝐯 U+1D42F1D3B9
w U+0077𝐰 U+1D4301D3B9
x U+0078𝐱 U+1D4311D3B9
y U+0079𝐲 U+1D4321D3B9
z U+007A𝐳 U+1D4331D3B9
Α U+0391𝚨 U+1D6A81D317
Β U+0392𝚩 U+1D6A91D317
Γ U+0393𝚪 U+1D6AA1D317
Δ U+0394𝚫 U+1D6AB1D317
Ε U+0395𝚬 U+1D6AC1D317
Ζ U+0396𝚭 U+1D6AD1D317
Η U+0397𝚮 U+1D6AE1D317
Θ U+0398𝚯 U+1D6AF1D317
Ι U+0399𝚰 U+1D6B01D317
Κ U+039A𝚱 U+1D6B11D317
Λ U+039B𝚲 U+1D6B21D317
Μ U+039C𝚳 U+1D6B31D317
Ν U+039D𝚴 U+1D6B41D317
Ξ U+039E𝚵 U+1D6B51D317
Ο U+039F𝚶 U+1D6B61D317
Π U+03A0𝚷 U+1D6B71D317
Ρ U+03A1𝚸 U+1D6B81D317
ϴ U+03F4𝚹 U+1D6B91D2C5
Σ U+03A3𝚺 U+1D6BA1D317
Τ U+03A4𝚻 U+1D6BB1D317
Υ U+03A5𝚼 U+1D6BC1D317
Φ U+03A6𝚽 U+1D6BD1D317
Χ U+03A7𝚾 U+1D6BE1D317
Ψ U+03A8𝚿 U+1D6BF1D317
Ω U+03A9𝛀 U+1D6C01D317
∇ U+2207𝛁 U+1D6C11B4BA
α U+03B1𝛂 U+1D6C21D311
β U+03B2𝛃 U+1D6C31D311
γ U+03B3𝛄 U+1D6C41D311
δ U+03B4𝛅 U+1D6C51D311
ε U+03B5𝛆 U+1D6C61D311
ζ U+03B6𝛇 U+1D6C71D311
η U+03B7𝛈 U+1D6C81D311
θ U+03B8𝛉 U+1D6C91D311
ι U+03B9𝛊 U+1D6CA1D311
κ U+03BA𝛋 U+1D6CB1D311
λ U+03BB𝛌 U+1D6CC1D311
μ U+03BC𝛍 U+1D6CD1D311
ν U+03BD𝛎 U+1D6CE1D311
ξ U+03BE𝛏 U+1D6CF1D311
ο U+03BF𝛐 U+1D6D01D311
π U+03C0𝛑 U+1D6D11D311
ρ U+03C1𝛒 U+1D6D21D311
ς U+03C2𝛓 U+1D6D31D311
σ U+03C3𝛔 U+1D6D41D311
τ U+03C4𝛕 U+1D6D51D311
υ U+03C5𝛖 U+1D6D61D311
φ U+03C6𝛗 U+1D6D71D311
χ U+03C7𝛘 U+1D6D81D311
ψ U+03C8𝛙 U+1D6D91D311
ω U+03C9𝛚 U+1D6DA1D311
∂ U+2202𝛛 U+1D6DB1B4D9
ϵ U+03F5𝛜 U+1D6DC1D2E7
ϑ U+03D1𝛝 U+1D6DD1D30C
ϰ U+03F0𝛞 U+1D6DE1D2EE
ϕ U+03D5𝛟 U+1D6DF1D30A
ϱ U+03F1𝛠 U+1D6E01D2EF
ϖ U+03D6𝛡 U+1D6E11D30B
Ϝ U+03DC𝟊 U+1D7CA1D3EE
ϝ U+03DD𝟋 U+1D7CB1D3EE
0 U+0030𝟎 U+1D7CE1D79E
1 U+0031𝟏 U+1D7CF1D79E
2 U+0032𝟐 U+1D7D01D79E
3 U+0033𝟑 U+1D7D11D79E
4 U+0034𝟒 U+1D7D21D79E
5 U+0035𝟓 U+1D7D31D79E
6 U+0036𝟔 U+1D7D41D79E
7 U+0037𝟕 U+1D7D51D79E
8 U+0038𝟖 U+1D7D61D79E
9 U+0039𝟗 U+1D7D71D79E

C.5 frakturの対応表
fraktur mappings

この節は規範ではありません.

This section is non-normative.

元の文字
Original
frakturコードポイントの差
Δcode point
A U+0041𝔄 U+1D5041D4C3
B U+0042𝔅 U+1D5051D4C3
C U+0043ℭ U+0212D20EA
D U+0044𝔇 U+1D5071D4C3
E U+0045𝔈 U+1D5081D4C3
F U+0046𝔉 U+1D5091D4C3
G U+0047𝔊 U+1D50A1D4C3
H U+0048ℌ U+0210C20C4
I U+0049ℑ U+0211120C8
J U+004A𝔍 U+1D50D1D4C3
K U+004B𝔎 U+1D50E1D4C3
L U+004C𝔏 U+1D50F1D4C3
M U+004D𝔐 U+1D5101D4C3
N U+004E𝔑 U+1D5111D4C3
O U+004F𝔒 U+1D5121D4C3
P U+0050𝔓 U+1D5131D4C3
Q U+0051𝔔 U+1D5141D4C3
R U+0052ℜ U+0211C20CA
S U+0053𝔖 U+1D5161D4C3
T U+0054𝔗 U+1D5171D4C3
U U+0055𝔘 U+1D5181D4C3
V U+0056𝔙 U+1D5191D4C3
W U+0057𝔚 U+1D51A1D4C3
X U+0058𝔛 U+1D51B1D4C3
Y U+0059𝔜 U+1D51C1D4C3
Z U+005Aℨ U+0212820CE
a U+0061𝔞 U+1D51E1D4BD
b U+0062𝔟 U+1D51F1D4BD
c U+0063𝔠 U+1D5201D4BD
d U+0064𝔡 U+1D5211D4BD
e U+0065𝔢 U+1D5221D4BD
f U+0066𝔣 U+1D5231D4BD
g U+0067𝔤 U+1D5241D4BD
h U+0068𝔥 U+1D5251D4BD
i U+0069𝔦 U+1D5261D4BD
j U+006A𝔧 U+1D5271D4BD
k U+006B𝔨 U+1D5281D4BD
l U+006C𝔩 U+1D5291D4BD
m U+006D𝔪 U+1D52A1D4BD
n U+006E𝔫 U+1D52B1D4BD
o U+006F𝔬 U+1D52C1D4BD
p U+0070𝔭 U+1D52D1D4BD
q U+0071𝔮 U+1D52E1D4BD
r U+0072𝔯 U+1D52F1D4BD
s U+0073𝔰 U+1D5301D4BD
t U+0074𝔱 U+1D5311D4BD
u U+0075𝔲 U+1D5321D4BD
v U+0076𝔳 U+1D5331D4BD
w U+0077𝔴 U+1D5341D4BD
x U+0078𝔵 U+1D5351D4BD
y U+0079𝔶 U+1D5361D4BD
z U+007A𝔷 U+1D5371D4BD

C.6 scriptの対応表
script mappings

この節は規範ではありません.

This section is non-normative.

元の文字
Original
scriptコードポイントの差
Δcode point
A U+0041𝒜 U+1D49C1D45B
B U+0042ℬ U+0212C20EA
C U+0043𝒞 U+1D49E1D45B
D U+0044𝒟 U+1D49F1D45B
E U+0045ℰ U+0213020EB
F U+0046ℱ U+0213120EB
G U+0047𝒢 U+1D4A21D45B
H U+0048ℋ U+0210B20C3
I U+0049ℐ U+0211020C7
J U+004A𝒥 U+1D4A51D45B
K U+004B𝒦 U+1D4A61D45B
L U+004Cℒ U+0211220C6
M U+004Dℳ U+0213320E6
N U+004E𝒩 U+1D4A91D45B
O U+004F𝒪 U+1D4AA1D45B
P U+0050𝒫 U+1D4AB1D45B
Q U+0051𝒬 U+1D4AC1D45B
R U+0052ℛ U+0211B20C9
S U+0053𝒮 U+1D4AE1D45B
T U+0054𝒯 U+1D4AF1D45B
U U+0055𝒰 U+1D4B01D45B
V U+0056𝒱 U+1D4B11D45B
W U+0057𝒲 U+1D4B21D45B
X U+0058𝒳 U+1D4B31D45B
Y U+0059𝒴 U+1D4B41D45B
Z U+005A𝒵 U+1D4B51D45B
a U+0061𝒶 U+1D4B61D455
b U+0062𝒷 U+1D4B71D455
c U+0063𝒸 U+1D4B81D455
d U+0064𝒹 U+1D4B91D455
e U+0065ℯ U+0212F20CA
f U+0066𝒻 U+1D4BB1D455
g U+0067ℊ U+0210A20A3
h U+0068𝒽 U+1D4BD1D455
i U+0069𝒾 U+1D4BE1D455
j U+006A𝒿 U+1D4BF1D455
k U+006B𝓀 U+1D4C01D455
l U+006C𝓁 U+1D4C11D455
m U+006D𝓂 U+1D4C21D455
n U+006E𝓃 U+1D4C31D455
o U+006Fℴ U+0213420C5
p U+0070𝓅 U+1D4C51D455
q U+0071𝓆 U+1D4C61D455
r U+0072𝓇 U+1D4C71D455
s U+0073𝓈 U+1D4C81D455
t U+0074𝓉 U+1D4C91D455
u U+0075𝓊 U+1D4CA1D455
v U+0076𝓋 U+1D4CB1D455
w U+0077𝓌 U+1D4CC1D455
x U+0078𝓍 U+1D4CD1D455
y U+0079𝓎 U+1D4CE1D455
z U+007A𝓏 U+1D4CF1D455

C.7 monospaceの対応表
monospace mappings

この節は規範ではありません.

This section is non-normative.

元の文字
Original
monospaceコードポイントの差
Δcode point
A U+0041𝙰 U+1D6701D62F
B U+0042𝙱 U+1D6711D62F
C U+0043𝙲 U+1D6721D62F
D U+0044𝙳 U+1D6731D62F
E U+0045𝙴 U+1D6741D62F
F U+0046𝙵 U+1D6751D62F
G U+0047𝙶 U+1D6761D62F
H U+0048𝙷 U+1D6771D62F
I U+0049𝙸 U+1D6781D62F
J U+004A𝙹 U+1D6791D62F
K U+004B𝙺 U+1D67A1D62F
L U+004C𝙻 U+1D67B1D62F
M U+004D𝙼 U+1D67C1D62F
N U+004E𝙽 U+1D67D1D62F
O U+004F𝙾 U+1D67E1D62F
P U+0050𝙿 U+1D67F1D62F
Q U+0051𝚀 U+1D6801D62F
R U+0052𝚁 U+1D6811D62F
S U+0053𝚂 U+1D6821D62F
T U+0054𝚃 U+1D6831D62F
U U+0055𝚄 U+1D6841D62F
V U+0056𝚅 U+1D6851D62F
W U+0057𝚆 U+1D6861D62F
X U+0058𝚇 U+1D6871D62F
Y U+0059𝚈 U+1D6881D62F
Z U+005A𝚉 U+1D6891D62F
a U+0061𝚊 U+1D68A1D629
b U+0062𝚋 U+1D68B1D629
c U+0063𝚌 U+1D68C1D629
d U+0064𝚍 U+1D68D1D629
e U+0065𝚎 U+1D68E1D629
f U+0066𝚏 U+1D68F1D629
g U+0067𝚐 U+1D6901D629
h U+0068𝚑 U+1D6911D629
i U+0069𝚒 U+1D6921D629
j U+006A𝚓 U+1D6931D629
k U+006B𝚔 U+1D6941D629
l U+006C𝚕 U+1D6951D629
m U+006D𝚖 U+1D6961D629
n U+006E𝚗 U+1D6971D629
o U+006F𝚘 U+1D6981D629
p U+0070𝚙 U+1D6991D629
q U+0071𝚚 U+1D69A1D629
r U+0072𝚛 U+1D69B1D629
s U+0073𝚜 U+1D69C1D629
t U+0074𝚝 U+1D69D1D629
u U+0075𝚞 U+1D69E1D629
v U+0076𝚟 U+1D69F1D629
w U+0077𝚠 U+1D6A01D629
x U+0078𝚡 U+1D6A11D629
y U+0079𝚢 U+1D6A21D629
z U+007A𝚣 U+1D6A31D629
0 U+0030𝟶 U+1D7F61D7C6
1 U+0031𝟷 U+1D7F71D7C6
2 U+0032𝟸 U+1D7F81D7C6
3 U+0033𝟹 U+1D7F91D7C6
4 U+0034𝟺 U+1D7FA1D7C6
5 U+0035𝟻 U+1D7FB1D7C6
6 U+0036𝟼 U+1D7FC1D7C6
7 U+0037𝟽 U+1D7FD1D7C6
8 U+0038𝟾 U+1D7FE1D7C6
9 U+0039𝟿 U+1D7FF1D7C6

C.8 initialの対応表
initial mappings

この節は規範ではありません.

This section is non-normative.

元の文字
Original
initialコードポイントの差
Δcode point
ب U+0628𞸡 U+1EE211E7F9
ج U+062C𞸢 U+1EE221E7F6
ه U+0647𞸤 U+1EE241E7DD
ح U+062D𞸧 U+1EE271E7FA
ي U+064A𞸩 U+1EE291E7DF
ك U+0643𞸪 U+1EE2A1E7E7
ل U+0644𞸫 U+1EE2B1E7E7
م U+0645𞸬 U+1EE2C1E7E7
ن U+0646𞸭 U+1EE2D1E7E7
س U+0633𞸮 U+1EE2E1E7FB
ع U+0639𞸯 U+1EE2F1E7F6
ف U+0641𞸰 U+1EE301E7EF
ص U+0635𞸱 U+1EE311E7FC
ق U+0642𞸲 U+1EE321E7F0
ش U+0634𞸴 U+1EE341E800
ت U+062A𞸵 U+1EE351E80B
ث U+062B𞸶 U+1EE361E80B
خ U+062E𞸷 U+1EE371E809
ض U+0636𞸹 U+1EE391E803
غ U+063A𞸻 U+1EE3B1E801

C.9 sans-serifの対応表
sans-serif mappings

この節は規範ではありません.

This section is non-normative.

元の文字
Original
sans-serifコードポイントの差
Δcode point
A U+0041𝖠 U+1D5A01D55F
B U+0042𝖡 U+1D5A11D55F
C U+0043𝖢 U+1D5A21D55F
D U+0044𝖣 U+1D5A31D55F
E U+0045𝖤 U+1D5A41D55F
F U+0046𝖥 U+1D5A51D55F
G U+0047𝖦 U+1D5A61D55F
H U+0048𝖧 U+1D5A71D55F
I U+0049𝖨 U+1D5A81D55F
J U+004A𝖩 U+1D5A91D55F
K U+004B𝖪 U+1D5AA1D55F
L U+004C𝖫 U+1D5AB1D55F
M U+004D𝖬 U+1D5AC1D55F
N U+004E𝖭 U+1D5AD1D55F
O U+004F𝖮 U+1D5AE1D55F
P U+0050𝖯 U+1D5AF1D55F
Q U+0051𝖰 U+1D5B01D55F
R U+0052𝖱 U+1D5B11D55F
S U+0053𝖲 U+1D5B21D55F
T U+0054𝖳 U+1D5B31D55F
U U+0055𝖴 U+1D5B41D55F
V U+0056𝖵 U+1D5B51D55F
W U+0057𝖶 U+1D5B61D55F
X U+0058𝖷 U+1D5B71D55F
Y U+0059𝖸 U+1D5B81D55F
Z U+005A𝖹 U+1D5B91D55F
a U+0061𝖺 U+1D5BA1D559
b U+0062𝖻 U+1D5BB1D559
c U+0063𝖼 U+1D5BC1D559
d U+0064𝖽 U+1D5BD1D559
e U+0065𝖾 U+1D5BE1D559
f U+0066𝖿 U+1D5BF1D559
g U+0067𝗀 U+1D5C01D559
h U+0068𝗁 U+1D5C11D559
i U+0069𝗂 U+1D5C21D559
j U+006A𝗃 U+1D5C31D559
k U+006B𝗄 U+1D5C41D559
l U+006C𝗅 U+1D5C51D559
m U+006D𝗆 U+1D5C61D559
n U+006E𝗇 U+1D5C71D559
o U+006F𝗈 U+1D5C81D559
p U+0070𝗉 U+1D5C91D559
q U+0071𝗊 U+1D5CA1D559
r U+0072𝗋 U+1D5CB1D559
s U+0073𝗌 U+1D5CC1D559
t U+0074𝗍 U+1D5CD1D559
u U+0075𝗎 U+1D5CE1D559
v U+0076𝗏 U+1D5CF1D559
w U+0077𝗐 U+1D5D01D559
x U+0078𝗑 U+1D5D11D559
y U+0079𝗒 U+1D5D21D559
z U+007A𝗓 U+1D5D31D559
0 U+0030𝟢 U+1D7E21D7B2
1 U+0031𝟣 U+1D7E31D7B2
2 U+0032𝟤 U+1D7E41D7B2
3 U+0033𝟥 U+1D7E51D7B2
4 U+0034𝟦 U+1D7E61D7B2
5 U+0035𝟧 U+1D7E71D7B2
6 U+0036𝟨 U+1D7E81D7B2
7 U+0037𝟩 U+1D7E91D7B2
8 U+0038𝟪 U+1D7EA1D7B2
9 U+0039𝟫 U+1D7EB1D7B2

C.10 double-struckの対応表
double-struck mappings

この節は規範ではありません.

This section is non-normative.

元の文字
Original
double-struckコードポイントの差
Δcode point
A U+0041𝔸 U+1D5381D4F7
B U+0042𝔹 U+1D5391D4F7
C U+0043ℂ U+0210220BF
D U+0044𝔻 U+1D53B1D4F7
E U+0045𝔼 U+1D53C1D4F7
F U+0046𝔽 U+1D53D1D4F7
G U+0047𝔾 U+1D53E1D4F7
H U+0048ℍ U+0210D20C5
I U+0049𝕀 U+1D5401D4F7
J U+004A𝕁 U+1D5411D4F7
K U+004B𝕂 U+1D5421D4F7
L U+004C𝕃 U+1D5431D4F7
M U+004D𝕄 U+1D5441D4F7
N U+004Eℕ U+0211520C7
O U+004F𝕆 U+1D5461D4F7
P U+0050ℙ U+0211920C9
Q U+0051ℚ U+0211A20C9
R U+0052ℝ U+0211D20CB
S U+0053𝕊 U+1D54A1D4F7
T U+0054𝕋 U+1D54B1D4F7
U U+0055𝕌 U+1D54C1D4F7
V U+0056𝕍 U+1D54D1D4F7
W U+0057𝕎 U+1D54E1D4F7
X U+0058𝕏 U+1D54F1D4F7
Y U+0059𝕐 U+1D5501D4F7
Z U+005Aℤ U+0212420CA
a U+0061𝕒 U+1D5521D4F1
b U+0062𝕓 U+1D5531D4F1
c U+0063𝕔 U+1D5541D4F1
d U+0064𝕕 U+1D5551D4F1
e U+0065𝕖 U+1D5561D4F1
f U+0066𝕗 U+1D5571D4F1
g U+0067𝕘 U+1D5581D4F1
h U+0068𝕙 U+1D5591D4F1
i U+0069𝕚 U+1D55A1D4F1
j U+006A𝕛 U+1D55B1D4F1
k U+006B𝕜 U+1D55C1D4F1
l U+006C𝕝 U+1D55D1D4F1
m U+006D𝕞 U+1D55E1D4F1
n U+006E𝕟 U+1D55F1D4F1
o U+006F𝕠 U+1D5601D4F1
p U+0070𝕡 U+1D5611D4F1
q U+0071𝕢 U+1D5621D4F1
r U+0072𝕣 U+1D5631D4F1
s U+0073𝕤 U+1D5641D4F1
t U+0074𝕥 U+1D5651D4F1
u U+0075𝕦 U+1D5661D4F1
v U+0076𝕧 U+1D5671D4F1
w U+0077𝕨 U+1D5681D4F1
x U+0078𝕩 U+1D5691D4F1
y U+0079𝕪 U+1D56A1D4F1
z U+007A𝕫 U+1D56B1D4F1
0 U+0030𝟘 U+1D7D81D7A8
1 U+0031𝟙 U+1D7D91D7A8
2 U+0032𝟚 U+1D7DA1D7A8
3 U+0033𝟛 U+1D7DB1D7A8
4 U+0034𝟜 U+1D7DC1D7A8
5 U+0035𝟝 U+1D7DD1D7A8
6 U+0036𝟞 U+1D7DE1D7A8
7 U+0037𝟟 U+1D7DF1D7A8
8 U+0038𝟠 U+1D7E01D7A8
9 U+0039𝟡 U+1D7E11D7A8
ب U+0628𞺡 U+1EEA11E879
ج U+062C𞺢 U+1EEA21E876
د U+062F𞺣 U+1EEA31E874
و U+0648𞺥 U+1EEA51E85D
ز U+0632𞺦 U+1EEA61E874
ح U+062D𞺧 U+1EEA71E87A
ط U+0637𞺨 U+1EEA81E871
ي U+064A𞺩 U+1EEA91E85F
ل U+0644𞺫 U+1EEAB1E867
م U+0645𞺬 U+1EEAC1E867
ن U+0646𞺭 U+1EEAD1E867
س U+0633𞺮 U+1EEAE1E87B
ع U+0639𞺯 U+1EEAF1E876
ف U+0641𞺰 U+1EEB01E86F
ص U+0635𞺱 U+1EEB11E87C
ق U+0642𞺲 U+1EEB21E870
ر U+0631𞺳 U+1EEB31E882
ش U+0634𞺴 U+1EEB41E880
ت U+062A𞺵 U+1EEB51E88B
ث U+062B𞺶 U+1EEB61E88B
خ U+062E𞺷 U+1EEB71E889
ذ U+0630𞺸 U+1EEB81E888
ض U+0636𞺹 U+1EEB91E883
ظ U+0638𞺺 U+1EEBA1E882
غ U+063A𞺻 U+1EEBB1E881

C.11 loopedの対応表
looped mappings

この節は規範ではありません.

This section is non-normative.

元の文字
Original
loopedコードポイントの差
Δcode point
ا U+0627𞺀 U+1EE801E859
ب U+0628𞺁 U+1EE811E859
ج U+062C𞺂 U+1EE821E856
د U+062F𞺃 U+1EE831E854
ه U+0647𞺄 U+1EE841E83D
و U+0648𞺅 U+1EE851E83D
ز U+0632𞺆 U+1EE861E854
ح U+062D𞺇 U+1EE871E85A
ط U+0637𞺈 U+1EE881E851
ي U+064A𞺉 U+1EE891E83F
ل U+0644𞺋 U+1EE8B1E847
م U+0645𞺌 U+1EE8C1E847
ن U+0646𞺍 U+1EE8D1E847
س U+0633𞺎 U+1EE8E1E85B
ع U+0639𞺏 U+1EE8F1E856
ف U+0641𞺐 U+1EE901E84F
ص U+0635𞺑 U+1EE911E85C
ق U+0642𞺒 U+1EE921E850
ر U+0631𞺓 U+1EE931E862
ش U+0634𞺔 U+1EE941E860
ت U+062A𞺕 U+1EE951E86B
ث U+062B𞺖 U+1EE961E86B
خ U+062E𞺗 U+1EE971E869
ذ U+0630𞺘 U+1EE981E868
ض U+0636𞺙 U+1EE991E863
ظ U+0638𞺚 U+1EE9A1E862
غ U+063A𞺛 U+1EE9B1E861

C.12 stretchedの対応表
stretched mappings

この節は規範ではありません.

This section is non-normative.

元の文字
Original
stretchedコードポイントの差
Δcode point
ب U+0628𞹡 U+1EE611E839
ج U+062C𞹢 U+1EE621E836
ه U+0647𞹤 U+1EE641E81D
ح U+062D𞹧 U+1EE671E83A
ط U+0637𞹨 U+1EE681E831
ي U+064A𞹩 U+1EE691E81F
ك U+0643𞹪 U+1EE6A1E827
م U+0645𞹬 U+1EE6C1E827
ن U+0646𞹭 U+1EE6D1E827
س U+0633𞹮 U+1EE6E1E83B
ع U+0639𞹯 U+1EE6F1E836
ف U+0641𞹰 U+1EE701E82F
ص U+0635𞹱 U+1EE711E83C
ق U+0642𞹲 U+1EE721E830
ش U+0634𞹴 U+1EE741E840
ت U+062A𞹵 U+1EE751E84B
ث U+062B𞹶 U+1EE761E84B
خ U+062E𞹷 U+1EE771E849
ض U+0636𞹹 U+1EE791E843
ظ U+0638𞹺 U+1EE7A1E842
غ U+063A𞹻 U+1EE7B1E841
ٮ U+066E𞹼 U+1EE7C1E80E
ڡ U+06A1𞹾 U+1EE7E1E7DD

C.13 italicの対応表
italic mappings

元の文字
Original
italicコードポイントの差
Δcode point
A U+0041𝐴 U+1D4341D3F3
B U+0042𝐵 U+1D4351D3F3
C U+0043𝐶 U+1D4361D3F3
D U+0044𝐷 U+1D4371D3F3
E U+0045𝐸 U+1D4381D3F3
F U+0046𝐹 U+1D4391D3F3
G U+0047𝐺 U+1D43A1D3F3
H U+0048𝐻 U+1D43B1D3F3
I U+0049𝐼 U+1D43C1D3F3
J U+004A𝐽 U+1D43D1D3F3
K U+004B𝐾 U+1D43E1D3F3
L U+004C𝐿 U+1D43F1D3F3
M U+004D𝑀 U+1D4401D3F3
N U+004E𝑁 U+1D4411D3F3
O U+004F𝑂 U+1D4421D3F3
P U+0050𝑃 U+1D4431D3F3
Q U+0051𝑄 U+1D4441D3F3
R U+0052𝑅 U+1D4451D3F3
S U+0053𝑆 U+1D4461D3F3
T U+0054𝑇 U+1D4471D3F3
U U+0055𝑈 U+1D4481D3F3
V U+0056𝑉 U+1D4491D3F3
W U+0057𝑊 U+1D44A1D3F3
X U+0058𝑋 U+1D44B1D3F3
Y U+0059𝑌 U+1D44C1D3F3
Z U+005A𝑍 U+1D44D1D3F3
a U+0061𝑎 U+1D44E1D3ED
b U+0062𝑏 U+1D44F1D3ED
c U+0063𝑐 U+1D4501D3ED
d U+0064𝑑 U+1D4511D3ED
e U+0065𝑒 U+1D4521D3ED
f U+0066𝑓 U+1D4531D3ED
g U+0067𝑔 U+1D4541D3ED
h U+0068ℎ U+0210E20A6
i U+0069𝑖 U+1D4561D3ED
j U+006A𝑗 U+1D4571D3ED
k U+006B𝑘 U+1D4581D3ED
l U+006C𝑙 U+1D4591D3ED
m U+006D𝑚 U+1D45A1D3ED
n U+006E𝑛 U+1D45B1D3ED
o U+006F𝑜 U+1D45C1D3ED
p U+0070𝑝 U+1D45D1D3ED
q U+0071𝑞 U+1D45E1D3ED
r U+0072𝑟 U+1D45F1D3ED
s U+0073𝑠 U+1D4601D3ED
t U+0074𝑡 U+1D4611D3ED
u U+0075𝑢 U+1D4621D3ED
v U+0076𝑣 U+1D4631D3ED
w U+0077𝑤 U+1D4641D3ED
x U+0078𝑥 U+1D4651D3ED
y U+0079𝑦 U+1D4661D3ED
z U+007A𝑧 U+1D4671D3ED
ı U+0131𝚤 U+1D6A41D573
ȷ U+0237𝚥 U+1D6A51D46E
Α U+0391𝛢 U+1D6E21D351
Β U+0392𝛣 U+1D6E31D351
Γ U+0393𝛤 U+1D6E41D351
Δ U+0394𝛥 U+1D6E51D351
Ε U+0395𝛦 U+1D6E61D351
Ζ U+0396𝛧 U+1D6E71D351
Η U+0397𝛨 U+1D6E81D351
Θ U+0398𝛩 U+1D6E91D351
Ι U+0399𝛪 U+1D6EA1D351
Κ U+039A𝛫 U+1D6EB1D351
Λ U+039B𝛬 U+1D6EC1D351
Μ U+039C𝛭 U+1D6ED1D351
Ν U+039D𝛮 U+1D6EE1D351
Ξ U+039E𝛯 U+1D6EF1D351
Ο U+039F𝛰 U+1D6F01D351
Π U+03A0𝛱 U+1D6F11D351
Ρ U+03A1𝛲 U+1D6F21D351
ϴ U+03F4𝛳 U+1D6F31D2FF
Σ U+03A3𝛴 U+1D6F41D351
Τ U+03A4𝛵 U+1D6F51D351
Υ U+03A5𝛶 U+1D6F61D351
Φ U+03A6𝛷 U+1D6F71D351
Χ U+03A7𝛸 U+1D6F81D351
Ψ U+03A8𝛹 U+1D6F91D351
Ω U+03A9𝛺 U+1D6FA1D351
∇ U+2207𝛻 U+1D6FB1B4F4
α U+03B1𝛼 U+1D6FC1D34B
β U+03B2𝛽 U+1D6FD1D34B
γ U+03B3𝛾 U+1D6FE1D34B
δ U+03B4𝛿 U+1D6FF1D34B
ε U+03B5𝜀 U+1D7001D34B
ζ U+03B6𝜁 U+1D7011D34B
η U+03B7𝜂 U+1D7021D34B
θ U+03B8𝜃 U+1D7031D34B
ι U+03B9𝜄 U+1D7041D34B
κ U+03BA𝜅 U+1D7051D34B
λ U+03BB𝜆 U+1D7061D34B
μ U+03BC𝜇 U+1D7071D34B
ν U+03BD𝜈 U+1D7081D34B
ξ U+03BE𝜉 U+1D7091D34B
ο U+03BF𝜊 U+1D70A1D34B
π U+03C0𝜋 U+1D70B1D34B
ρ U+03C1𝜌 U+1D70C1D34B
ς U+03C2𝜍 U+1D70D1D34B
σ U+03C3𝜎 U+1D70E1D34B
τ U+03C4𝜏 U+1D70F1D34B
υ U+03C5𝜐 U+1D7101D34B
φ U+03C6𝜑 U+1D7111D34B
χ U+03C7𝜒 U+1D7121D34B
ψ U+03C8𝜓 U+1D7131D34B
ω U+03C9𝜔 U+1D7141D34B
∂ U+2202𝜕 U+1D7151B513
ϵ U+03F5𝜖 U+1D7161D321
ϑ U+03D1𝜗 U+1D7171D346
ϰ U+03F0𝜘 U+1D7181D328
ϕ U+03D5𝜙 U+1D7191D344
ϱ U+03F1𝜚 U+1D71A1D329
ϖ U+03D6𝜛 U+1D71B1D345

C.14 bold-frakturの対応表
bold-fraktur mappings

この節は規範ではありません.

This section is non-normative.

元の文字
Original
bold-frakturコードポイントの差
Δcode point
A U+0041𝕬 U+1D56C1D52B
B U+0042𝕭 U+1D56D1D52B
C U+0043𝕮 U+1D56E1D52B
D U+0044𝕯 U+1D56F1D52B
E U+0045𝕰 U+1D5701D52B
F U+0046𝕱 U+1D5711D52B
G U+0047𝕲 U+1D5721D52B
H U+0048𝕳 U+1D5731D52B
I U+0049𝕴 U+1D5741D52B
J U+004A𝕵 U+1D5751D52B
K U+004B𝕶 U+1D5761D52B
L U+004C𝕷 U+1D5771D52B
M U+004D𝕸 U+1D5781D52B
N U+004E𝕹 U+1D5791D52B
O U+004F𝕺 U+1D57A1D52B
P U+0050𝕻 U+1D57B1D52B
Q U+0051𝕼 U+1D57C1D52B
R U+0052𝕽 U+1D57D1D52B
S U+0053𝕾 U+1D57E1D52B
T U+0054𝕿 U+1D57F1D52B
U U+0055𝖀 U+1D5801D52B
V U+0056𝖁 U+1D5811D52B
W U+0057𝖂 U+1D5821D52B
X U+0058𝖃 U+1D5831D52B
Y U+0059𝖄 U+1D5841D52B
Z U+005A𝖅 U+1D5851D52B
a U+0061𝖆 U+1D5861D525
b U+0062𝖇 U+1D5871D525
c U+0063𝖈 U+1D5881D525
d U+0064𝖉 U+1D5891D525
e U+0065𝖊 U+1D58A1D525
f U+0066𝖋 U+1D58B1D525
g U+0067𝖌 U+1D58C1D525
h U+0068𝖍 U+1D58D1D525
i U+0069𝖎 U+1D58E1D525
j U+006A𝖏 U+1D58F1D525
k U+006B𝖐 U+1D5901D525
l U+006C𝖑 U+1D5911D525
m U+006D𝖒 U+1D5921D525
n U+006E𝖓 U+1D5931D525
o U+006F𝖔 U+1D5941D525
p U+0070𝖕 U+1D5951D525
q U+0071𝖖 U+1D5961D525
r U+0072𝖗 U+1D5971D525
s U+0073𝖘 U+1D5981D525
t U+0074𝖙 U+1D5991D525
u U+0075𝖚 U+1D59A1D525
v U+0076𝖛 U+1D59B1D525
w U+0077𝖜 U+1D59C1D525
x U+0078𝖝 U+1D59D1D525
y U+0079𝖞 U+1D59E1D525
z U+007A𝖟 U+1D59F1D525

C.15 sans-serif-bold-italicの対応表
sans-serif-bold-italic mappings

この節は規範ではありません.

This section is non-normative.

元の文字
Original
sans-serif-bold-italicコードポイントの差
Δcode point
A U+0041𝘼 U+1D63C1D5FB
B U+0042𝘽 U+1D63D1D5FB
C U+0043𝘾 U+1D63E1D5FB
D U+0044𝘿 U+1D63F1D5FB
E U+0045𝙀 U+1D6401D5FB
F U+0046𝙁 U+1D6411D5FB
G U+0047𝙂 U+1D6421D5FB
H U+0048𝙃 U+1D6431D5FB
I U+0049𝙄 U+1D6441D5FB
J U+004A𝙅 U+1D6451D5FB
K U+004B𝙆 U+1D6461D5FB
L U+004C𝙇 U+1D6471D5FB
M U+004D𝙈 U+1D6481D5FB
N U+004E𝙉 U+1D6491D5FB
O U+004F𝙊 U+1D64A1D5FB
P U+0050𝙋 U+1D64B1D5FB
Q U+0051𝙌 U+1D64C1D5FB
R U+0052𝙍 U+1D64D1D5FB
S U+0053𝙎 U+1D64E1D5FB
T U+0054𝙏 U+1D64F1D5FB
U U+0055𝙐 U+1D6501D5FB
V U+0056𝙑 U+1D6511D5FB
W U+0057𝙒 U+1D6521D5FB
X U+0058𝙓 U+1D6531D5FB
Y U+0059𝙔 U+1D6541D5FB
Z U+005A𝙕 U+1D6551D5FB
a U+0061𝙖 U+1D6561D5F5
b U+0062𝙗 U+1D6571D5F5
c U+0063𝙘 U+1D6581D5F5
d U+0064𝙙 U+1D6591D5F5
e U+0065𝙚 U+1D65A1D5F5
f U+0066𝙛 U+1D65B1D5F5
g U+0067𝙜 U+1D65C1D5F5
h U+0068𝙝 U+1D65D1D5F5
i U+0069𝙞 U+1D65E1D5F5
j U+006A𝙟 U+1D65F1D5F5
k U+006B𝙠 U+1D6601D5F5
l U+006C𝙡 U+1D6611D5F5
m U+006D𝙢 U+1D6621D5F5
n U+006E𝙣 U+1D6631D5F5
o U+006F𝙤 U+1D6641D5F5
p U+0070𝙥 U+1D6651D5F5
q U+0071𝙦 U+1D6661D5F5
r U+0072𝙧 U+1D6671D5F5
s U+0073𝙨 U+1D6681D5F5
t U+0074𝙩 U+1D6691D5F5
u U+0075𝙪 U+1D66A1D5F5
v U+0076𝙫 U+1D66B1D5F5
w U+0077𝙬 U+1D66C1D5F5
x U+0078𝙭 U+1D66D1D5F5
y U+0079𝙮 U+1D66E1D5F5
z U+007A𝙯 U+1D66F1D5F5
Α U+0391𝞐 U+1D7901D3FF
Β U+0392𝞑 U+1D7911D3FF
Γ U+0393𝞒 U+1D7921D3FF
Δ U+0394𝞓 U+1D7931D3FF
Ε U+0395𝞔 U+1D7941D3FF
Ζ U+0396𝞕 U+1D7951D3FF
Η U+0397𝞖 U+1D7961D3FF
Θ U+0398𝞗 U+1D7971D3FF
Ι U+0399𝞘 U+1D7981D3FF
Κ U+039A𝞙 U+1D7991D3FF
Λ U+039B𝞚 U+1D79A1D3FF
Μ U+039C𝞛 U+1D79B1D3FF
Ν U+039D𝞜 U+1D79C1D3FF
Ξ U+039E𝞝 U+1D79D1D3FF
Ο U+039F𝞞 U+1D79E1D3FF
Π U+03A0𝞟 U+1D79F1D3FF
Ρ U+03A1𝞠 U+1D7A01D3FF
ϴ U+03F4𝞡 U+1D7A11D3AD
Σ U+03A3𝞢 U+1D7A21D3FF
Τ U+03A4𝞣 U+1D7A31D3FF
Υ U+03A5𝞤 U+1D7A41D3FF
Φ U+03A6𝞥 U+1D7A51D3FF
Χ U+03A7𝞦 U+1D7A61D3FF
Ψ U+03A8𝞧 U+1D7A71D3FF
Ω U+03A9𝞨 U+1D7A81D3FF
∇ U+2207𝞩 U+1D7A91B5A2
α U+03B1𝞪 U+1D7AA1D3F9
β U+03B2𝞫 U+1D7AB1D3F9
γ U+03B3𝞬 U+1D7AC1D3F9
δ U+03B4𝞭 U+1D7AD1D3F9
ε U+03B5𝞮 U+1D7AE1D3F9
ζ U+03B6𝞯 U+1D7AF1D3F9
η U+03B7𝞰 U+1D7B01D3F9
θ U+03B8𝞱 U+1D7B11D3F9
ι U+03B9𝞲 U+1D7B21D3F9
κ U+03BA𝞳 U+1D7B31D3F9
λ U+03BB𝞴 U+1D7B41D3F9
μ U+03BC𝞵 U+1D7B51D3F9
ν U+03BD𝞶 U+1D7B61D3F9
ξ U+03BE𝞷 U+1D7B71D3F9
ο U+03BF𝞸 U+1D7B81D3F9
π U+03C0𝞹 U+1D7B91D3F9
ρ U+03C1𝞺 U+1D7BA1D3F9
ς U+03C2𝞻 U+1D7BB1D3F9
σ U+03C3𝞼 U+1D7BC1D3F9
τ U+03C4𝞽 U+1D7BD1D3F9
υ U+03C5𝞾 U+1D7BE1D3F9
φ U+03C6𝞿 U+1D7BF1D3F9
χ U+03C7𝟀 U+1D7C01D3F9
ψ U+03C8𝟁 U+1D7C11D3F9
ω U+03C9𝟂 U+1D7C21D3F9
∂ U+2202𝟃 U+1D7C31B5C1
ϵ U+03F5𝟄 U+1D7C41D3CF
ϑ U+03D1𝟅 U+1D7C51D3F4
ϰ U+03F0𝟆 U+1D7C61D3D6
ϕ U+03D5𝟇 U+1D7C71D3F2
ϱ U+03F1𝟈 U+1D7C81D3D7
ϖ U+03D6𝟉 U+1D7C91D3F3

C.16 sans-serif-italicの対応表
sans-serif-italic mappings

この節は規範ではありません.

This section is non-normative.

元の文字
Original
sans-serif-italicコードポイントの差
Δcode point
A U+0041𝘈 U+1D6081D5C7
B U+0042𝘉 U+1D6091D5C7
C U+0043𝘊 U+1D60A1D5C7
D U+0044𝘋 U+1D60B1D5C7
E U+0045𝘌 U+1D60C1D5C7
F U+0046𝘍 U+1D60D1D5C7
G U+0047𝘎 U+1D60E1D5C7
H U+0048𝘏 U+1D60F1D5C7
I U+0049𝘐 U+1D6101D5C7
J U+004A𝘑 U+1D6111D5C7
K U+004B𝘒 U+1D6121D5C7
L U+004C𝘓 U+1D6131D5C7
M U+004D𝘔 U+1D6141D5C7
N U+004E𝘕 U+1D6151D5C7
O U+004F𝘖 U+1D6161D5C7
P U+0050𝘗 U+1D6171D5C7
Q U+0051𝘘 U+1D6181D5C7
R U+0052𝘙 U+1D6191D5C7
S U+0053𝘚 U+1D61A1D5C7
T U+0054𝘛 U+1D61B1D5C7
U U+0055𝘜 U+1D61C1D5C7
V U+0056𝘝 U+1D61D1D5C7
W U+0057𝘞 U+1D61E1D5C7
X U+0058𝘟 U+1D61F1D5C7
Y U+0059𝘠 U+1D6201D5C7
Z U+005A𝘡 U+1D6211D5C7
a U+0061𝘢 U+1D6221D5C1
b U+0062𝘣 U+1D6231D5C1
c U+0063𝘤 U+1D6241D5C1
d U+0064𝘥 U+1D6251D5C1
e U+0065𝘦 U+1D6261D5C1
f U+0066𝘧 U+1D6271D5C1
g U+0067𝘨 U+1D6281D5C1
h U+0068𝘩 U+1D6291D5C1
i U+0069𝘪 U+1D62A1D5C1
j U+006A𝘫 U+1D62B1D5C1
k U+006B𝘬 U+1D62C1D5C1
l U+006C𝘭 U+1D62D1D5C1
m U+006D𝘮 U+1D62E1D5C1
n U+006E𝘯 U+1D62F1D5C1
o U+006F𝘰 U+1D6301D5C1
p U+0070𝘱 U+1D6311D5C1
q U+0071𝘲 U+1D6321D5C1
r U+0072𝘳 U+1D6331D5C1
s U+0073𝘴 U+1D6341D5C1
t U+0074𝘵 U+1D6351D5C1
u U+0075𝘶 U+1D6361D5C1
v U+0076𝘷 U+1D6371D5C1
w U+0077𝘸 U+1D6381D5C1
x U+0078𝘹 U+1D6391D5C1
y U+0079𝘺 U+1D63A1D5C1
z U+007A𝘻 U+1D63B1D5C1

C.17 bold-sans-serifの対応表
bold-sans-serif mappings

この節は規範ではありません.

This section is non-normative.

元の文字
Original
bold-sans-serifコードポイントの差
Δcode point
A U+0041𝗔 U+1D5D41D593
B U+0042𝗕 U+1D5D51D593
C U+0043𝗖 U+1D5D61D593
D U+0044𝗗 U+1D5D71D593
E U+0045𝗘 U+1D5D81D593
F U+0046𝗙 U+1D5D91D593
G U+0047𝗚 U+1D5DA1D593
H U+0048𝗛 U+1D5DB1D593
I U+0049𝗜 U+1D5DC1D593
J U+004A𝗝 U+1D5DD1D593
K U+004B𝗞 U+1D5DE1D593
L U+004C𝗟 U+1D5DF1D593
M U+004D𝗠 U+1D5E01D593
N U+004E𝗡 U+1D5E11D593
O U+004F𝗢 U+1D5E21D593
P U+0050𝗣 U+1D5E31D593
Q U+0051𝗤 U+1D5E41D593
R U+0052𝗥 U+1D5E51D593
S U+0053𝗦 U+1D5E61D593
T U+0054𝗧 U+1D5E71D593
U U+0055𝗨 U+1D5E81D593
V U+0056𝗩 U+1D5E91D593
W U+0057𝗪 U+1D5EA1D593
X U+0058𝗫 U+1D5EB1D593
Y U+0059𝗬 U+1D5EC1D593
Z U+005A𝗭 U+1D5ED1D593
a U+0061𝗮 U+1D5EE1D58D
b U+0062𝗯 U+1D5EF1D58D
c U+0063𝗰 U+1D5F01D58D
d U+0064𝗱 U+1D5F11D58D
e U+0065𝗲 U+1D5F21D58D
f U+0066𝗳 U+1D5F31D58D
g U+0067𝗴 U+1D5F41D58D
h U+0068𝗵 U+1D5F51D58D
i U+0069𝗶 U+1D5F61D58D
j U+006A𝗷 U+1D5F71D58D
k U+006B𝗸 U+1D5F81D58D
l U+006C𝗹 U+1D5F91D58D
m U+006D𝗺 U+1D5FA1D58D
n U+006E𝗻 U+1D5FB1D58D
o U+006F𝗼 U+1D5FC1D58D
p U+0070𝗽 U+1D5FD1D58D
q U+0071𝗾 U+1D5FE1D58D
r U+0072𝗿 U+1D5FF1D58D
s U+0073𝘀 U+1D6001D58D
t U+0074𝘁 U+1D6011D58D
u U+0075𝘂 U+1D6021D58D
v U+0076𝘃 U+1D6031D58D
w U+0077𝘄 U+1D6041D58D
x U+0078𝘅 U+1D6051D58D
y U+0079𝘆 U+1D6061D58D
z U+007A𝘇 U+1D6071D58D
Α U+0391𝝖 U+1D7561D3C5
Β U+0392𝝗 U+1D7571D3C5
Γ U+0393𝝘 U+1D7581D3C5
Δ U+0394𝝙 U+1D7591D3C5
Ε U+0395𝝚 U+1D75A1D3C5
Ζ U+0396𝝛 U+1D75B1D3C5
Η U+0397𝝜 U+1D75C1D3C5
Θ U+0398𝝝 U+1D75D1D3C5
Ι U+0399𝝞 U+1D75E1D3C5
Κ U+039A𝝟 U+1D75F1D3C5
Λ U+039B𝝠 U+1D7601D3C5
Μ U+039C𝝡 U+1D7611D3C5
Ν U+039D𝝢 U+1D7621D3C5
Ξ U+039E𝝣 U+1D7631D3C5
Ο U+039F𝝤 U+1D7641D3C5
Π U+03A0𝝥 U+1D7651D3C5
Ρ U+03A1𝝦 U+1D7661D3C5
ϴ U+03F4𝝧 U+1D7671D373
Σ U+03A3𝝨 U+1D7681D3C5
Τ U+03A4𝝩 U+1D7691D3C5
Υ U+03A5𝝪 U+1D76A1D3C5
Φ U+03A6𝝫 U+1D76B1D3C5
Χ U+03A7𝝬 U+1D76C1D3C5
Ψ U+03A8𝝭 U+1D76D1D3C5
Ω U+03A9𝝮 U+1D76E1D3C5
∇ U+2207𝝯 U+1D76F1B568
α U+03B1𝝰 U+1D7701D3BF
β U+03B2𝝱 U+1D7711D3BF
γ U+03B3𝝲 U+1D7721D3BF
δ U+03B4𝝳 U+1D7731D3BF
ε U+03B5𝝴 U+1D7741D3BF
ζ U+03B6𝝵 U+1D7751D3BF
η U+03B7𝝶 U+1D7761D3BF
θ U+03B8𝝷 U+1D7771D3BF
ι U+03B9𝝸 U+1D7781D3BF
κ U+03BA𝝹 U+1D7791D3BF
λ U+03BB𝝺 U+1D77A1D3BF
μ U+03BC𝝻 U+1D77B1D3BF
ν U+03BD𝝼 U+1D77C1D3BF
ξ U+03BE𝝽 U+1D77D1D3BF
ο U+03BF𝝾 U+1D77E1D3BF
π U+03C0𝝿 U+1D77F1D3BF
ρ U+03C1𝞀 U+1D7801D3BF
ς U+03C2𝞁 U+1D7811D3BF
σ U+03C3𝞂 U+1D7821D3BF
τ U+03C4𝞃 U+1D7831D3BF
υ U+03C5𝞄 U+1D7841D3BF
φ U+03C6𝞅 U+1D7851D3BF
χ U+03C7𝞆 U+1D7861D3BF
ψ U+03C8𝞇 U+1D7871D3BF
ω U+03C9𝞈 U+1D7881D3BF
∂ U+2202𝞉 U+1D7891B587
ϵ U+03F5𝞊 U+1D78A1D395
ϑ U+03D1𝞋 U+1D78B1D3BA
ϰ U+03F0𝞌 U+1D78C1D39C
ϕ U+03D5𝞍 U+1D78D1D3B8
ϱ U+03F1𝞎 U+1D78E1D39D
ϖ U+03D6𝞏 U+1D78F1D3B9
0 U+0030𝟬 U+1D7EC1D7BC
1 U+0031𝟭 U+1D7ED1D7BC
2 U+0032𝟮 U+1D7EE1D7BC
3 U+0033𝟯 U+1D7EF1D7BC
4 U+0034𝟰 U+1D7F01D7BC
5 U+0035𝟱 U+1D7F11D7BC
6 U+0036𝟲 U+1D7F21D7BC
7 U+0037𝟳 U+1D7F31D7BC
8 U+0038𝟴 U+1D7F41D7BC
9 U+0039𝟵 U+1D7F51D7BC

D. 謝辞
Acknowledgments

この節は規範ではありません.

This section is non-normative.

MathMLコアは, MathML3に基づいています. その仕様書に寄与した人々については, [MathML3]の付録Eを参照して下さい.

MathML Core is based on MathML3. See the appendix E of [MathML3] for the people that contributed to that specification.

MathMLコアは, 最初MathML共同部会で, 続いて数学作業部会で開発されました. この仕様書の開発の間, MathMLコア会議にいつも参加していた作業部会と共同部会の参加者は次のとおりです. Brian Kardell, Bruce Miller, Daniel Marques, David Carlisle, David Farmer, Deyan Ginev, Frédéric Wang, Louis Mahler, Moritz Schubotz, Murray Sargent, Neil Soiffer, Patrick Ion, Rob Buis, Steve Noble and Sam Dooley.

MathML Core was initially developed by the MathML Community Group, and then by the Math Working Group. Working Group or Community Group members who regularly participated in MathML Core meetings during the development of this specification: Brian Kardell, Bruce Miller, Daniel Marques, David Carlisle, David Farmer, Deyan Ginev, Frédéric Wang, Louis Mahler, Moritz Schubotz, Murray Sargent, Neil Soiffer, Patrick Ion, Rob Buis, Steve Noble and Sam Dooley.

加えて, 編集を手助けしてくれた Brian Kardell, Neil Soiffer, Rob Buisに特別な感謝を申し上げます.

In addition, we would like to extend special thanks to Brian Kardell, Neil Soiffer and Rob Buis for help with the editing.

テストツールを手助けしてくれた次の人々にもたくさん感謝します. Brian Kardell, Frédéric Wang, Neil Soiffer, Rob Buis. 様々なテストが, ブラウザに精通した方からのMathMLのテストにも基づいており, MozillaおよびWebKitの貢献者に感謝します.

Many thanks also to the following people for their help with the test suite: Brian Kardell, Frédéric Wang, Neil Soiffer and Rob Buis. Several tests are also based on MathML tests from browser repositories and we are grateful to the Mozilla and WebKit contributors.

公開の意思疎通方法での情報提供や意見を通して, この仕様書の作成を手助け頂いた次の人々に感謝申し上げます. André Greiner-Petter, Anne van Kesteren, Boris Zbarsky, Brian Smith, Elika Etemad, Emilio Cobos Álvarez, ExE Boss, Ian Kilpatrick, Koji Ishii, L. David Baron, Michael Kohlhase, Michael Smith, Ryosuke Niwa, Sergey Malkin, Tab Atkins Jr., Viktor Yaffle and frankvel.

We would like to thank the people who, through their input and feedback on public communication channels, have helped us with the creation of this specification: André Greiner-Petter, Anne van Kesteren, Boris Zbarsky, Brian Smith, Elika Etemad, Emilio Cobos Álvarez, ExE Boss, Ian Kilpatrick, Koji Ishii, L. David Baron, Michael Kohlhase, Michael Smith, Ryosuke Niwa, Sergey Malkin, Tab Atkins Jr., Viktor Yaffle and frankvel.

E. セキュリティに関する考慮事項
Security Considerations

この節は規範ではありません.

This section is non-normative.

この仕様書は, 2.1.3 共通の属性で述べたMathMLイベントハンドラ属性を通じて, スクリプトを実行する仕組みを加えます. UA(訳注:"ユーザーエージェント"の略)は, HTML要素またはSVG要素に適用されるのと同じセキュリティの制限に従って, これらの属性で指定されたスクリプトの実行を中止してもよいです.

This specification adds script execution mechanisms via the MathML event handler attributes described in 2.1.3 Global Attributes. UAs may decide to prevent execution of scripts specified in these attributes, following the same security restrictions as those applying to HTML or SVG elements.

注意
Note

[MathML3]では, どんな要素もhref属性またはxlink:href属性を通じて, 信頼されていないデータを指すURLやjavascript:実行であっても, リンクすることができました. これらの属性は, MathMLコアでは利用できません. ただし, 2.2.1 HTMLとSVGで述べられているように, HTMLまたはSVGのリンクを含む, MathMLの中に埋め込まれたHTMLまたはSVGの中身からは, それらをリンクできてしまいます.

In [MathML3], it was possible to make any element linkable via href or xlink:href attributes, with an URL pointing to an untrusted resource or even javascript: execution. These attributes are not available in MathML Core. However, as described in 2.2.1 HTML and SVG it is possible to embed HTML or SVG content inside MathML, including HTML or SVG links.

注意
Note

[MathML3]では, ブラウザのステータスバーの文字列を上書きするのに, actiontypeの値を"statusline"に設定しmaction要素を利用することができました. 特に, 攻撃者は, この機能を, 例えば次のように信頼されていないリンクのURLの文字列を隠すのに利用できました.

In [MathML3], it was possible to use the maction element with the actiontype value set to "statusline" in order to override the text of the browser statusline. In particular, an attacker could use this to hide the URL text of an untrusted link e.g.

<math>
  <maction actiontype="statusline">
    <mtext><a href="javascript:alert('JS execution')">Click me!</a></mtext>
    <mtext>./this-is-a-safe-link.html</mtext>
  </maction>
</math>

この機能は, MathMLコアでは利用できず, maction要素は, 本質的に追加書式を持つmrow入れ物要素のようにふるまいます.

This feature is not available in MathML Core, where the maction element essentially behaves like an mrow container with extra style.

攻撃者は, とても大きな伸長される演算子を挿入することや, 組み立てによって字形を形作るアルゴリズムを効果的にとてもたくさんの数の字形に分けることで, UAを停止しようと試みることができます. UAは, rminGlyphAssembly.partCountにおいて最大値を制限することで, これらの課題に徐々に対応してもよいです.

An attacker can try to hang the UA by inserting very large stretchy operators, effectively making the algorithm shaping of the glyph assembly deal with a huge amount of glyphs. UAs may work around this issue by limiting rmin and GlyphAssembly.partCount to maximum values.

CSSフォントモジュールで述べられているように, 攻撃者は, ブラウザ実装における潜在的なセキュリティの不足に付け込むのに. 不正な形式または悪意のあるフォントを頼ろうとすることができます. OpenType MATHテーブルがこの仕様書で広範囲にわたって使用されることから, それらの不正なフォントを安全にする仕組みがこのテーブルを扱えることを, UAは確実にすべきです.

As described in CSS Fonts Module, an attacker can try to rely on malformed or malicious fonts to exploit potential security faults in browser implementations. Because the OpenType MATH table is used extensively in this specification, UAs should ensure their font sanitization mechanisms are able to deal with that table.

最終的に, 攻撃にさらされる面を減らすために, UAの中には, 実行時に選択可能な部分をウェブプラットフォームの利用できない部分とするものもあります. MathMLの配置をできなくすることは, DOM木構造の中で要素をHTML名前空間の中に置くようにするか, 4. 数学配置のためのCSS拡張を利用できなくすることで達成できます.

Finally, in order to reduce attack surface, some UAs expose runtime options to disable part of the web platform. Disabling MathML layout can essentially be achieved by forcing elements in the DOM tree to be put in the HTML namespace and disabling 4. CSS Extensions for Math Layout.

F. プライバシーに関する考慮事項
Privacy Considerations

この節は規範ではありません.

This section is non-normative.

2.2.1 HTMLとSVGで説明したように, MathMLは, canvas要素の中で利用できる<foreignObject>要素を通じてSVGのデータの中に埋め込まれます. UAは, 誰かがJavaScript APIを通じてcanvasの中身に触れようとしたときに, canvasを汚したり, "SecurityError"を返したりするような潜在的な情報漏洩を, 防ぐための基準を実装することを決めてもよいです.

As explained in 2.2.1 HTML and SVG, MathML can be embedded into an SVG image via the <foreignObject> element which can thus be used in a canvas element. UA may decide to implement any measure to prevent potential information leakage such as tainting the canvas and returning a "SecurityError" when one tries to access the canvas' content via JavaScript APIs.

次の例において, canvasの画像は, https://example.org/へのHTMLリンクを伴う, 何らかのMathMLの中身の画像に設定されます. 攻撃者にとって, context.getImageData()を通じてピクセルデータを読むことで, そのリンクを訪れたかどうか決めることは困難です. MathMLの中のリンクについて, より詳しくは, E. セキュリティに関する考慮事項を参照して下さい.

In the following example, the canvas image is set to the image of some MathML content with an HTML link to https://example.org/. It should not be possible for an attacker to determine whether that link was visited by reading pixels via context.getImageData(). For more about links in MathML, see E. Security Considerations.

let svg = `
  <svg xmlns="http://www.w3.org/2000/svg" width="100px" height="100px">
    <foreignObject width="100" height="100"
                   requiredExtensions="http://www.w3.org/1998/Math/MathML">
      <math xmlns="http://www.w3.org/1998/Math/MathML">
        <msqrt style="font-size: 25px">
          <mtext>&#x25a0;</mtext>
          <mtext><a href="https://example.org/">&#x25a0;</a></mtext>
        </msqrt>
      </math>
    </foreignObject>
  </svg>`;
let image = new Image();
image.width = 100;
image.height = 100;
image.onload = () => {
  let canvas = document.createElement('canvas');
  canvas.width = 100;
  canvas.height = 100;
  canvas.style = "border: 1px solid black";
  document.body.appendChild(canvas);
  let context = canvas.getContext("2d");
  context.drawImage(image, 0, 0);
};
image.src = `data:image/svg+xml;base64,${window.btoa(svg)}`;

この仕様書は, システムフォントを必要としてもよいDOM要素の配置について述べています. HTML/CSSの配置のように, ボックスの大きさや位置を計測したり, システムフォントからのデータを示したりするために, (例えば, canvasの文脈の中に埋め込まれた中身におけるcontext.getImageData(), もしくは単にgetBoundingClientRect()といった)JavaScript APIを利用することが可能です. そのようなフォントにおける多方面にわたる試験を組み合わせたり, 熟知されたフォントに対する計測結果を比較したりすることで, 攻撃者は, 利用者の既定値であるフォントを試したり決めたりできます.

This specification describes layout of DOM elements which may involve system fonts. Like for HTML/CSS layout, it is thus possible to use JavaScript APIs (e.g. context.getImageData() on content embedded in a canvas context, or even just getBoundingClientRect()) to measure box sizes and positions and infer data from system fonts. By combining miscellaneous tests on such fonts and comparing measurements against results of well-known fonts, an attacker can try and determine the default fonts of the user.

次のHTML+CSS+JavaScript文書は, A Well Known System Fontが普通に利用可能かどうか試したり決めたりするために, 外部の基準とウェブフォントに頼っています.

The following HTML+CSS+JavaScript document relies on a Web font with exotic metrics to try and determine whether A Well Known System Font is available by default.

<style>
  @font-face {
    font-family: MyWebFontWithVeryWideGlyphs;
    src: url("/fonts/my-web-fonts-with-very-wide-glyphs.woff");
  }
  #container {
    font-family: AWellKnownSystemFont, MyWebFontWithVeryWideGlyphs;
  }
</style>
<div id="container">SOMETEXT</div>
<div id="reference">SOMETEXT</div>
<script>
document.fonts.ready.then(() => {
  let containerWidth =
    document.getElementById("container").getBoundingClientRect().width;
  let referenceWidth =
    document.getElementById("reference").getBoundingClientRect().width;
  let isWellKnownSystemFontAvailable =
    Math.abs(containerWidth - referenceWidth) < 1;
});
</script>

次のHTML+CSS+JavaScript文書は, UIセリフフォントがアジアの字形を提供するのかどうか, 決めようとしています.

The following HTML+CSS+JavaScript document tries to determine whether the UI serif font provides Asian glyphs:

<style>
  @font-face {
    font-family: MyWebFontWithVeryWideAsianGlyphs;
    src: url("/fonts/my-web-fonts-with-very-wide-asian-glyphs.woff");
  }
  #container {
    font-family: ui-serif, MyWebFontWithVeryWideAsianGlyphs
  }
  #reference {
    font-family: MyWebFontWithVeryWideAsianGlyphs;
  }
</style>
<div id="container"></div>
<div id="reference"></div>
<script>
document.fonts.ready.then(() => {
  let containerWidth =
    document.getElementById("container").getBoundingClientRect().width;
  let referenceWidth =
    document.getElementById("reference").getBoundingClientRect().width;
  let uiSerifFontDoesNotContainAsianGlyph =
    Math.abs(containerWidth - referenceWidth) < 1;
});
</script>

次のHTML+CSS文書は, text-decoration-thicknessfrom-font1em(ここでは100ピクセル)にそれぞれ設定し描画された同じ文字列を含んでいます. 2つの下線を高さを比較すると, PostScriptテーブル[OPEN-FONT-FORMAT]のunderlineThicknessの値に十分近い値を計算できます.

The following HTML+CSS document contains the same text rendered with text-decoration-thickness set to from-font and 1em (here 100 pixels) respectively. By comparing the heights of the two underlines, one can calculate a good approximation of the underlineThickness value from the PostScript Table [OPEN-FONT-FORMAT].

<style>
  #test {
    font-size: 100px;
  }
  #container {
    text-decoration-line: underline;
    text-decoration-thickness: from-font;
  }
  #reference {
    text-decoration-line: underline;
    text-decoration-thickness: 1em;
  }
</style>
<div id="test">
  <div id="container">SOMETEXT</div>
  <div id="reference">SOMETEXT</div>
</div>

この仕様書は, MathMLの中身を描画するのに5. OpenType MATHテーブルの情報に頼っています. 上でHTML+CSS+JavaScript文書に対して述べられているものに似た計測の技術を用いると, MathConstantsMathGlyphInfoからのほとんどの配送パラメータに十分近い値を得ることができます. MathMLの描画にMathVariantsテーブルを利用することは, canvasの文脈の中に異なる大きさの伸長された演算子を置く場合にも見られるでしょう.

This specification relies on information from 5. OpenType MATH table to render MathML content. One can get good approximation of most layout parameters from MathConstants and MathGlyphInfo using measurement techniques similar to what is described above for HTML+CSS+JavaScript document. The use of the MathVariants table for MathML rendering can also be observed by putting stretchy operators of different sizes inside a canvas context.

個々に得られるそれらのパラメータは独立したものであるにも関わらず, この仕様書を実装することは, 形跡を記録する技術を実装するために, 攻撃者に利用されることのある一揃えのむき出しのフォントの情報を増やします. 典型的に, そららのパラメータは, 利用者に対して利用可能で望ましい数学フォントを決める手助けになります.

Although none of these parameters taken individually are personal, implementing this specification increases the set of exposed font information that can be used by an attacker to implement fingerprinting techniques. Typically, they could help determine available and preferred math fonts for a user.

G. 適合
Conformance

適合の要件は, 説明的な主張の組合せやRFC 2119の用語で表現されます. 鍵となる用語“しなければなりません”(MUST),“してはなりません”(MUST NOT), “必須です”(REQUIRED), “することになります”(SHALL), “することはありません”(SHALL NOT), “すべきです”(SHOULD), “すべきではありません”(SHOULD NOT), “推奨されます”(RECOMMENDED), “してもよいです”(MAY), “任意です”(OPTIONAL)は, この文書の中の規範となる部分では, RFC 2119で述べられているものとてして解釈されます. ただし, 読みやすさの点から, それらの言葉は, この仕様書では全て大文字で現れるわけではありません.

Conformance requirements are expressed with a combination of descriptive assertions and RFC 2119 terminology. The key words “MUST”, “MUST NOT”, “REQUIRED”, “SHALL”, “SHALL NOT”, “SHOULD”, “SHOULD NOT”, “RECOMMENDED”, “MAY”, and “OPTIONAL” in the normative parts of this document are to be interpreted as described in RFC 2119. However, for readability, these words do not appear in all uppercase letters in this specification.

この仕様書の全ての文章は, 規範でない, 例, 注意と明確に記された節を除いて規範です. [RFC2119].

All of the text of this specification is normative except sections explicitly marked as non-normative, examples, and notes. [RFC2119]

この仕様書の中の例は, “例えば”という言葉と一緒に紹介されるか, 次のように規範となる文章と分けられてclass="example"と指定されて整理されます.

Examples in this specification are introduced with the words “for example” or are set apart from the normative text with class="example", like this:

これは有益な例の例です.

This is an example of an informative example.

有益な注意は, “注意”という言葉で始まり, 次のように規範となる文章と分けられてclass="note"と指定され整理されます.

Informative notes begin with the word “Note” and are set apart from the normative text with class="note", like this:

注意
Note

注意, これは有益な注意です.

Note, this is an informative note.

助言は, 特別な注意を喚起するために書式の変わった規範的な文章で, 次のように他の規範となる文章と分けられて<strong class="advisement">と指定されて整理されます.UAは, 代わりの対応を提供しなければなりません.

Advisements are normative sections styled to evoke special attention and are set apart from other normative text with <strong class="advisement">, like this: UAs MUST provide an accessible alternative.

H. 参考文献
References

H.1 規範となる参考文献
Normative references

[css-align-3]
[css-align-3]
CSS Box Alignment Module Level 3(訳注:"CSSボックスの整列モジュール"の意味). Elika Etemad, Tab Atkins Jr.著. W3C. 2023年2月17日. W3C草案. URL: https://www.w3.org/TR/css-align-3/
CSS Box Alignment Module Level 3. Elika Etemad; Tab Atkins Jr.. W3C. 17 February 2023. W3C Working Draft. URL: https://www.w3.org/TR/css-align-3/
[css-backgrounds-3]
[css-backgrounds-3]
CSS Backgrounds and Borders Module Level 3(訳注:"CSS背景と境界線モジュール"の意味). Bert Bos, Elika Etemad, Brad Kemper著. W3C. 2023年2月14日. W3C勧告候補. URL: https://www.w3.org/TR/css-backgrounds-3/
CSS Backgrounds and Borders Module Level 3. Bert Bos; Elika Etemad; Brad Kemper. W3C. 14 February 2023. W3C Candidate Recommendation. URL: https://www.w3.org/TR/css-backgrounds-3/
[css-box-4]
[css-box-4]
CSS Box Model Module Level 4(訳注:"CSSボックスモデルモジュール"の意味). Elika Etemad 著. W3C. 2022年1月13日. W3C草案. URL: https://www.w3.org/TR/css-box-4/
CSS Box Model Module Level 4. Elika Etemad. W3C. 3 November 2022. W3C Working Draft. URL: https://www.w3.org/TR/css-box-4/
[CSS-CASCADE-4]
[CSS-CASCADE-4]
CSS Cascading and Inheritance Level 4(訳注:"カスケードと継承"の意味). Elika Etemad, Tab Atkins Jr.著. W3C. 2022年1月13日. W3C勧告候補. URL: https://www.w3.org/TR/css-cascade-4/
CSS Cascading and Inheritance Level 4. Elika Etemad; Tab Atkins Jr.. W3C. 13 January 2022. W3C Candidate Recommendation. URL: https://www.w3.org/TR/css-cascade-4/
[css-color-4]
[css-color-4]
CSS Color Module Level 4(訳注:"CSS色モジュール"の意味). Tab Atkins Jr., Chris Lilley, Lea Verou 著. W3C. 2022年11月1日. W3C勧告候補. URL: https://www.w3.org/TR/css-color-3/
CSS Color Module Level 4. Tab Atkins Jr.; Chris Lilley; Lea Verou. W3C. 1 November 2022. W3C Candidate Recommendation. URL: https://www.w3.org/TR/css-color-4/
[CSS-DISPLAY-3]
[CSS-DISPLAY-3]
CSS Display Module Level 3(訳注:"CSS表示モジュール"の意味). Elika Etemad, Tab Atkins Jr. 著. W3C. 2023年3月30日. W3C勧告候補. URL: https://www.w3.org/TR/css-display-3/
CSS Display Module Level 3. Elika Etemad; Tab Atkins Jr.. W3C. 30 March 2023. W3C Candidate Recommendation. URL: https://www.w3.org/TR/css-display-3/
[CSS-FONTS-4]
[CSS-FONTS-4]
CSS Fonts Module Level 4(訳注:"CSSフォントモジュール"の意味). John Daggett, Myles Maxfield, Chris Lilley 著. W3C. 2021年12月21日. W3C草案. URL: https://www.w3.org/TR/css-fonts-4/
CSS Fonts Module Level 4. John Daggett; Myles Maxfield; Chris Lilley. W3C. 21 December 2021. W3C Working Draft. URL: https://www.w3.org/TR/css-fonts-4/
[CSS-POSITION-3]
[CSS-POSITION-3]
CSS Positioned Layout Module Level 3(訳注:"CSS位置指定配置モジュール"の意味). Elika Etemad, Tab Atkins Jr.著. W3C. 2023年4月3日. W3C草案. URL: https://www.w3.org/TR/css-position-3/
CSS Positioned Layout Module Level 3. Elika Etemad; Tab Atkins Jr.. W3C. 3 April 2023. W3C Working Draft. URL: https://www.w3.org/TR/css-position-3/
[css-pseudo-4]
[css-pseudo-4]
CSS Pseudo-Elements Module Level 4(訳注:"CSS疑似要素モジュール"の意味). Daniel Glazman, Elika Etemad, Alan Stearns 著. W3C. 2022年12月30日. W3C草案. URL: https://www.w3.org/TR/css-pseudo-4/
CSS Pseudo-Elements Module Level 4. Daniel Glazman; Elika Etemad; Alan Stearns. W3C. 30 December 2022. W3C Working Draft. URL: https://www.w3.org/TR/css-pseudo-4/
[css-sizing-3]
[css-sizing-3]
CSS Box Sizing Module Level 3(訳注:"CSSボックス寸法モジュール"の意味). Tab Atkins Jr., Elika Etemad 著. W3C. 2021年12月17日. W3C草案. URL: https://www.w3.org/TR/css-sizing-3/
CSS Box Sizing Module Level 3. Tab Atkins Jr.; Elika Etemad. W3C. 17 December 2021. W3C Working Draft. URL: https://www.w3.org/TR/css-sizing-3/
[CSS-TEXT-3]
[CSS-TEXT-3]
CSS Text Module Level 3(訳注:"CSSテキストモジュール"の意味). Elika Etemad, Koji Ishii, Florian Rivoal 著. W3C. 2023年9月3日. W3C勧告候補. URL: https://www.w3.org/TR/css-text-3/
CSS Text Module Level 3. Elika Etemad; Koji Ishii; Florian Rivoal. W3C. 3 September 2023. W3C Candidate Recommendation. URL: https://www.w3.org/TR/css-text-3/
[CSS-VALUES-4]
[CSS-VALUES-4]
CSS Values and Units Module Level 4(訳注:"CSS値と単位モジュール"の意味). Tab Atkins Jr., Elika Etemad 著. W3C. 2023年8月27日. W3C草案. URL: https://www.w3.org/TR/css-values-4/
CSS Values and Units Module Level 4. Tab Atkins Jr.; Elika Etemad. W3C. 27 October 2023. W3C Working Draft. URL: https://www.w3.org/TR/css-values-4/
[CSS-WRITING-MODES-4]
[CSS-WRITING-MODES-4]
CSS Writing Modes Level 4(訳注:"CSS書字モード"の意味). Elika Etemad, Koji Ishii 著. W3C. 2019月7月30日. W3C勧告候補. URL: https://www.w3.org/TR/css-writing-modes-3/
CSS Writing Modes Level 4. Elika Etemad; Koji Ishii. W3C. 30 July 2019. W3C Candidate Recommendation. URL: https://www.w3.org/TR/css-writing-modes-4/
[CSS2]
[CSS2]
Cascading Style Sheets Level 2 Revision 1 (CSS 2.1) Specification. Bert Bos, Tantek Çelik, Ian Hickson, Håkon Wium Lie 著. W3C. 2011年6月7日. W3C勧告. URL: https://www.w3.org/TR/CSS21/
(訳注:日本語訳https://ss1.xrea.com/momdo.s35.xrea.com/web-html-test/spec/CSS21/cover.html)
Cascading Style Sheets Level 2 Revision 1 (CSS 2.1) Specification. Bert Bos; Tantek Çelik; Ian Hickson; Håkon Wium Lie. W3C. 7 June 2011. W3C Recommendation. URL: https://www.w3.org/TR/CSS21/
[CSS22]
[CSS22]
Cascading Style Sheets Level 2 Revision 2 (CSS 2.2) Specification. Bert Bos 著. W3C. 2016年4月12日. W3C草案. URL: https://www.w3.org/TR/CSS22/
Cascading Style Sheets Level 2 Revision 2 (CSS 2.2) Specification. Bert Bos. W3C. 12 April 2016. W3C Working Draft. URL: https://www.w3.org/TR/CSS22/
[DOM]
[DOM]
DOM Standard(訳注:"DOM標準"の意味). Anne van Kesteren 著. WHATWG. Living Standard(訳注:"日々更新される基準"の意味). URL: https://dom.spec.whatwg.org/
(訳注:日本語訳https://triple-underscore.github.io/DOM4-ja.html)
DOM Standard. Anne van Kesteren. WHATWG. Living Standard. URL: https://dom.spec.whatwg.org/
[HTML]
[HTML]
HTML Standard(訳注:"HTML標準"の意味). Anne van Kesteren, Domenic Denicola, Ian Hickson, Philip Jagenstedt, Simon Pieters 著. WHATWG. Living Standard(訳注:"日々更新される基準"の意味). URL: https://html.spec.whatwg.org/multipage/
(訳注:日本語訳https://momdo.github.io/html/)
HTML Standard. Anne van Kesteren; Domenic Denicola; Ian Hickson; Philip Jägenstedt; Simon Pieters. WHATWG. Living Standard. URL: https://html.spec.whatwg.org/multipage/
[infra]
[infra]
Infra Standard(訳注:"基盤標準"の意味). Anne van Kesteren, Domenic Denicola 著. WHATWG. Living Standardspan(訳注:"日々更新される基準"の意味). URL: https://infra.spec.whatwg.org/
(訳注:日本語訳https://triple-underscore.github.io/infra-ja.html)
Infra Standard. Anne van Kesteren; Domenic Denicola. WHATWG. Living Standard. URL: https://infra.spec.whatwg.org/
[OPEN-FONT-FORMAT]
[OPEN-FONT-FORMAT]
Information technology — Coding of audio-visual objects — Part 22: Open Font Format(訳注:"情報技術 — 視聴覚的内容のコード化 — 第22部: Open Font Format"の意味). 国際標準化機構. URL: http://standards.iso.org/ittf/PubliclyAvailableStandards/c052136_ISO_IEC_14496-22_2009%28E%29.zip
Information technology — Coding of audio-visual objects — Part 22: Open Font Format. International Organization for Standardization. URL: http://standards.iso.org/ittf/PubliclyAvailableStandards/c052136_ISO_IEC_14496-22_2009%28E%29.zip
[RFC2119]
[RFC2119]
要求レベル指示のためのRFC用キーワード. S. Bradner著. IETF. 1997年3月. 現時点における最善の実践(ベストカレントプラクティス). URL: https://www.rfc-editor.org/rfc/rfc2119
(訳注:日本語訳http://www.cam.hi-ho.ne.jp/mendoxi/rfc/rfc2119j.html)
Key words for use in RFCs to Indicate Requirement Levels. S. Bradner. IETF. March 1997. Best Current Practice. URL: https://www.rfc-editor.org/rfc/rfc2119
[セレクタ]
[SELECT]
セレクタ Level 3. Tantek Çelik, Elika Etemad, Daniel Glazman, Ian Hickson, Peter Linss, John Williams 著. W3C. 2018年11月6日. W3C勧告. URL: https://www.w3.org/TR/selectors-3/
(訳注:日本語訳https://standards.mitsue.co.jp/resources/w3c/TR/css3-selectors/)
Selectors Level 3. Tantek Çelik; Elika Etemad; Daniel Glazman; Ian Hickson; Peter Linss; John Williams. W3C. 6 November 2018. W3C Recommendation. URL: https://www.w3.org/TR/selectors-3/
[SVG]
[SVG]
Scalable Vector Graphics (SVG) 1.0 Specification. Jon Ferraiolo 著. W3C. 2001年9月4日. W3C勧告. URL: https://www.w3.org/TR/SVG/
Scalable Vector Graphics (SVG) 1.0 Specification. Jon Ferraiolo. W3C. 4 September 2001. W3C Recommendation. URL: https://www.w3.org/TR/SVG/
[webidl]
[webidl]
Web IDL Standard(訳注:"Web IDL 標準"の意味). Edgar Chen, Timothy Gu 著. WHATWG. Living Standard(訳注:"日々更新される基準"の意味). URL: https://webidl.spec.whatwg.org/
(訳注:日本語訳https://triple-underscore.github.io/WebIDL-ja.html)
Web IDL Standard. Edgar Chen; Timothy Gu. WHATWG. Living Standard. URL: https://webidl.spec.whatwg.org/

H.2 有益な参考文献
Informative references

[CSS-LAYOUT-API-1]
[CSS-LAYOUT-API-1]
CSS Layout API Level 1(訳注:"CSS配置API"の意味). Greg Whitworth, Ian Kilpatrick, Tab Atkins Jr., Shane Stephens, Robert O'Callahan, Rossen Atanassov 著. W3C. 2018年4月12日. W3C草案. URL: https://www.w3.org/TR/css-layout-api-1/
CSS Layout API Level 1. Greg Whitworth; Ian Kilpatrick; Tab Atkins Jr.; Shane Stephens; Robert O'Callahan; Rossen Atanassov. W3C. 12 April 2018. W3C Working Draft. URL: https://www.w3.org/TR/css-layout-api-1/
[css-text-decor-4]
[css-text-decor-4]
CSS Text Decoration Module Level 4(訳注:"CSSボックス文字装飾モジュール"の意味). Elika Etemad, Koji Ishii 著. W3C. 2022年5月4日. W3C草案. URL: https://www.w3.org/TR/css-text-decor-4/
CSS Text Decoration Module Level 4. Elika Etemad; Koji Ishii. W3C. 4 May 2022. W3C Working Draft. URL: https://www.w3.org/TR/css-text-decor-4/
[cssom-view]
[cssom-view]
CSSOM View Module(訳注:"CSSOM表示モジュール"の意味). Simon Pieters 著. W3C. 2016年3月17日. W3C草案. URL: https://www.w3.org/TR/cssom-view-1/
CSSOM View Module. Simon Pieters. W3C. 17 March 2016. W3C Working Draft. URL: https://www.w3.org/TR/cssom-view-1/
[HOUDINI]
[HOUDINI]
CSS-TAG Houdini Editor Drafts(訳注:"CSS-TAG Houdini 編集者草案"の意味). URL: https://drafts.css-houdini.org/
CSS-TAG Houdini Editor Drafts. URL: https://drafts.css-houdini.org/
[MATHML3]
[MATHML3]
数学用マークアップ言語 (MathML) ヴァージョン 3.0 第2版. David Carlisle, Patrick D F Ion, Robert R Miner 著. W3C. 2014年4月10日. W3C勧告. URL: https://www.w3.org/TR/MathML3/
(訳注:日本語訳https://takamu.sakura.ne.jp/mathml3-ja/index.html)
Mathematical Markup Language (MathML) Version 3.0 2nd Edition. David Carlisle; Patrick D F Ion; Robert R Miner. W3C. 10 April 2014. W3C Recommendation. URL: https://www.w3.org/TR/MathML3/
[MATHML4]
[MATHML4]
数学用マークアップ言語 (MathML) ヴァージョン 4.0. David Carlisle 他 著. W3C編集者草案. URL: https://w3c.github.io/mathml/
Mathematical Markup Language (MathML) Version 4.0. David Carlisle et al.. W3C Editor's Draft. URL: https://w3c.github.io/mathml/
[OPEN-TYPE-MATH-ILLUMINATED]
[OPEN-TYPE-MATH-ILLUMINATED]
OpenType Math Illuminated(訳注:"明確化されたOpenType MATHフォント"の意味). Ulrik Vieth 著. 2009年. URL: https://www.tug.org/TUGboat/tb30-1/tb94vieth.pdf
OpenType Math Illuminated. Ulrik Vieth. 2009. URL: https://www.tug.org/TUGboat/tb30-1/tb94vieth.pdf
[OPEN-TYPE-MATH-IN-HARFBUZZ]
[OPEN-TYPE-MATH-IN-HARFBUZZ]
OpenType MATH in HarfBuzz(訳注:"HarfBuzzにおけるOpenType MATHフォント"の意味). Frédéric Wang 著. URL: https://frederic-wang.fr/opentype-math-in-harfbuzz.html
OpenType MATH in HarfBuzz. Frédéric Wang. URL: https://frederic-wang.fr/opentype-math-in-harfbuzz.html
[TEXBOOK]
[TEXBOOK]
The TeXBook. Knuth, Donald E. 著. Addison-Wesley Professional. 1984年.
The TeXBook. Knuth, Donald E.. Addison-Wesley Professional. 1984.
[ユニコード]
[UNICODE]
ユニコード標準. ユニコードコンソーシアム. URL: https://www.unicode.org/versions/latest/
The Unicode Standard. Unicode Consortium. URL: https://www.unicode.org/versions/latest/