Summary: A short introduction to writing Content MathML by hand. It covers tokens, prefix notation, and applying functions and operators. In addition it introduces writing derivatives, integrals, vectors, and matrices.
mが使用されています。そのため、<apply>タグは<m:apply>として参照されます。MathMLネームスペース内でのすべてのマークアップは、<m:math>タグに囲まれなければならないことを覚えていてください。
<m:math> <m:apply> <m:plus/> <m:cn>2</m:cn> <m:cn>3</m:cn> </m:apply> </m:math>This would display as
applyタグですこれは演算子(または関数)が演算対象に適用されようとしていることを示します。次は適用される関数もしくは演算子がきます。この例の場合、演算子plusが適用されています。最後は、演算子の後にくる演算対象です。この例の場合、演算対象は加えられる数です。要約すると、applyタグは、関数(sinやci、cn、csymbolの3つのトークンがあります。トークンは基本的に最も低い要素です。トークンは作用している要素の種類を意味します。cnタグは、タグの中身が数字であることを示します。ciタグは、タグの中身が識別子であることを示します。識別子とは変数や関数のことです。例えばci要素は、Presentation MathMLを含めることができます。トークン(特にciとcn)は、Content MathMLで多く使用されます。あらゆる数、変数、または関数がトークンによってマークされます。ciとcnとは異なったタイプのトークンです。それは、新しいオブジェクトを作成するために使用されます。それはplainテキストかPresentation MathMLを含むことができます。Content MathMLで定義されている演算子か関数を必要とするとき、それの作成にcsymbolを使用することができます。
ciとcsymbolの両方は、識別子か新しいシンボルがどように表示されるかを決めるPresentation MathMLを使用することができます。Presentation MathMLについてより詳しく学びたいなら、Section 3
of the MathML 2.0 Specificationを見てください。例えば、添字2がある<m:math> <m:ci> <m:msub> <m:mi>x</m:mi> <m:mn>2</m:mn> </m:msub> </m:ci> </m:math>This would display as
ci要素には、要素の内容に関する詳しい情報を提供するために使用するtype属性があります。例えば、ciタグの内容が関数(type='fn')、ベクトル(type='vector')、複素数(type='complex')、そして他のいろいろなもの同様に、宣言することができます。type属性の使用は、あなたが書いている数字の意味をエンコードするのを助けてくれます。
ciタグのtype属性にtype='fn'と入力してください)。
<m:math> <m:apply> <m:ci type='fn'>f</m:ci> <m:ci>x</m:ci> </m:apply> </m:math>This will display as
<m:math> <m:apply> <m:sin/> <m:ci>x</m:ci> </m:apply> </m:math>This will display as
plus(和)、minus(差)、times(乗)、divide(商)、power(べき乗)、root(ルート)などです。<m:math> <m:apply> <m:minus/> <m:ci>x</m:ci> </m:apply> </m:math>This will display as
<m:math><m:cn>-1</m:cn></m:math>This will display as
<m:math> <m:apply> <m:times/> <m:ci>a</m:ci> <m:apply> <m:plus/> <m:ci>b</m:ci> <m:ci>c</m:ci> </m:apply> </m:apply> </m:math>This will display as
eq演算子は方程式を書くのに使用されます。それは他の演算子と同じように使用されます。これはapplyの最初の子要素です。それは2つ(以上)の子要素を持ちます。それらは等しい量になります(例えば右辺=左辺)。例えば、<m:math> <m:apply> <m:eq/> <m:apply> <m:plus/> <m:apply> <m:times/> <m:ci>a</m:ci> <m:ci>b</m:ci> </m:apply> <m:apply> <m:times/> <m:ci>a</m:ci> <m:ci>c</m:ci> </m:apply> </m:apply> <m:apply> <m:times/> <m:ci>a</m:ci> <m:apply> <m:plus/> <m:ci>b</m:ci> <m:ci>c</m:ci> </m:apply> </m:apply> </m:apply> </m:math>This will display as
intです。しかし、演算子や上記の関数とは異なり、それは子要素を持っています。積分対象を表すbvar、積分範囲を表すlowlimitとuplimit(もしくはintervalとcondition)です。lowlimit、uplimit(この2つはセット)、interval、およびconditionは3つの異なった方法です。bvar、lowlimit、uplimit、interval、およびconditionの各子要素は、トークン要素を取ることを忘れないでください。以下は、「0から<m:math> <m:apply> <m:int/> <m:bvar><m:ci>x</m:ci></m:bvar> <m:lowlimit><m:cn>0</m:cn></m:lowlimit> <m:uplimit><m:ci>b</m:ci></m:uplimit> <m:apply> <m:ci type='fn'>f</m:ci> <m:ci>x</m:ci> </m:apply> </m:apply> </m:math>This will display as
diffです。積分と同じような方法で行えます。まずbvarを使用して、微分対象を定義する必要があります。以下は、「<m:math> <m:apply> <m:diff/> <m:bvar> <m:ci>x</m:ci> </m:bvar> <m:apply> <m:ci type="fn">f</m:ci> <m:ci>x</m:ci> </m:apply> </m:apply> </m:math>This will display as
bvarタグのdegreeタグを追加して行ってください。degreeタグは微分の回数を含みます。以下は、「<m:math> <m:apply> <m:diff/> <m:bvar> <m:ci>x</m:ci> <m:degree><m:cn>2</m:cn></m:degree> </m:bvar> <m:apply><m:ci type="fn">f</m:ci> <m:ci>x</m:ci> </m:apply> </m:apply> </m:math>This will display as
vectorタグを使用し、他の要素の組み合わせで作成されます。
<m:math> <m:vector> <m:apply> <m:plus/> <m:ci>x</m:ci> <m:ci>y</m:ci> </m:apply> <m:ci>z</m:ci> <m:cn>0</m:cn> </m:vector> </m:math>This will display as
matrix要素はいくつかのmatrixrow要素を含み、matrixrow要素は行列の値を含みます。
<m:math> <m:matrix> <m:matrixrow> <m:ci>a</m:ci> <m:ci>b</m:ci> <m:ci>c</m:ci> </m:matrixrow> <m:matrixrow> <m:ci>d</m:ci> <m:ci>e</m:ci> <m:ci>f</m:ci> </m:matrixrow> <m:matrixrow> <m:ci>g</m:ci> <m:ci>h</m:ci> <m:ci>j</m:ci> </m:matrixrow> </m:matrix> </m:math>This will display as