Office Math RTF and OMML Documentation
The RTF 2007 specification is now available. Word 2007 added as many control words as Word 2000, XP and 2003 combined! The .doc spec is 4.4 MB, while the .docx is only 881KB. Admittedly a zipped version of the .doc spec is somewhat smaller than the .docx version. The math section starts on p. 124. It includes all of the material in my math RTF post as well as many examples, the BNF syntax, and much additional documentation.
For the Office Open XML formats, go to Ecma-376, where you can download ECMA-376.pdf. This is a large file containing several parts that explain Microsoft Office's Open XML formats. The main reference part starts on p. 778 of ECMA-376.pdf and is titled Office Open XML, Ecma TC45, Final Draft, Part 4: Markup Language Reference. Chapter 2 is WordProcessingML Reference Material and starts on p. 5 of this part.
Chapter 7 is the Shared MLs Reference Material and Section 7.1 documents Office math XML (OMML), starting on p. 5744 of ECMA-376.pdf.
For easy reference, the following table summarizes the sections of this document that define the OMML math elements. The section and page numbers refer to Part 4, not to ECMA-376.pdf. The math objects described in my math RTF post have "Function" in the corresponding Purpose entry, and the arguments (like numerator and denominator) have "argument" in their Purpose entry.
Section | Element | Purpose | Page |
7.1.2.1 | acc | Accent | 4964 |
7.1.2.2 | accPr | Accent Properties | 4965 |
7.1.2.3 | aln | Alignment | 4966 |
7.1.2.4 | alnScr | Align Scripts | 4967 |
7.1.2.5 | argPr | Argument Properties | 4968 |
7.1.2.6 | argSz | Argument Size | 4969 |
7.1.2.7 | bar | Bar | 4970 |
7.1.2.8 | barPr | Bar Properties | 4971 |
7.1.2.9 | baseJc | Matrix Base Justification | 4972 |
7.1.2.10 | begChr | Delimiter Beginning Character | 4975 |
7.1.2.11 | borderBox | Border-Box Function | 4975 |
7.1.2.12 | borderBoxPr | Border Box Properties | 4976 |
7.1.2.13 | box | Box Function | 4977 |
7.1.2.14 | boxPr | Box Properties | 4978 |
7.1.2.15 | brk | Break | 4979 |
7.1.2.16 | brkBin | Break on Binary Operators | 4980 |
7.1.2.17 | brkBinSub | Break on Binary Subtraction | 4981 |
7.1.2.18 | cGp | Matrix Column Gap | 4982 |
7.1.2.19 | cGpRule | Matrix Column Gap Rule | 4983 |
7.1.2.20 | chr | Accent Character | 4984 |
7.1.2.21 | count | Matrix Column Count | 4985 |
7.1.2.22 | cSp | Matrix Column Spacing | 4986 |
7.1.2.23 | ctrlPr | Control Properties | 4987 |
7.1.2.24 | d | Delimiter Function | 4988 |
7.1.2.25 | defJc | Default Justification | 4989 |
7.1.2.26 | deg | Degree argument | 4990 |
7.1.2.27 | degHide | Hide Degree | 4993 |
7.1.2.28 | den | Denominator argument | 4994 |
7.1.2.29 | diff | Differential | 4996 |
7.1.2.30 | dispDef | Use Display Math Defaults | 4998 |
7.1.2.31 | dPr | Delimiter Properties | 4999 |
7.1.2.32 | e | Base argument | 4999 |
7.1.2.33 | endChr | Delimiter Ending Character | 5002 |
7.1.2.34 | eqArr | Equation-Array Function | 5003 |
7.1.2.35 | eqArrPr | Equation Array Properties | 5004 |
7.1.2.36 | f | Fraction Function | 5005 |
7.1.2.37 | fName | Function Name argument | 5006 |
7.1.2.38 | fPr | Fraction Properties | 5009 |
7.1.2.39 | func | Function Apply Function | 5010 |
7.1.2.40 | funcPr | Function Properties | 5011 |
7.1.2.41 | groupChr | Group-Character Function | 5011 |
7.1.2.42 | groupChrPr | Group-Character Properties | 5012 |
7.1.2.43 | grow | n-ary Grow | 5013 |
7.1.2.44 | hideBot | Hide Bottom Edge | 5014 |
7.1.2.45 | hideLeft | Hide Left Edge | 5015 |
7.1.2.46 | hideRight | Hide Right Edge | 5015 |
7.1.2.47 | hideTop | Hide Top Edge | 5016 |
7.1.2.48 | interSp | Inter-Equation Spacing | 5017 |
7.1.2.49 | intLim | Integral Limit Locations | 5018 |
7.1.2.50 | intraSp | Intra-Equation Spacing | 5019 |
7.1.2.51 | jc | Justification | 5019 |
7.1.2.52 | lim | Limit argument | 5020 |
7.1.2.53 | limLoc | n-ary Limit Location | 5022 |
7.1.2.54 | limLow | Lower-Limit Function | 5023 |
7.1.2.55 | limLowPr | Lower Limit Properties | 5024 |
7.1.2.56 | limUpp | Upper-Limit Function | 5024 |
7.1.2.57 | limUppPr | Upper Limit Properties | 5025 |
7.1.2.58 | lit | Literal | 5026 |
7.1.2.59 | lMargin | Left Margin | 5027 |
7.1.2.60 | m | Matrix Function | 5027 |
7.1.2.61 | mathFont | Math Font | 5029 |
7.1.2.62 | mathPr | Math Properties | 5030 |
7.1.2.63 | maxDist | Maximum Distribution | 5031 |
7.1.2.64 | mc | Matrix Column | 5032 |
7.1.2.65 | mcJc | Matrix Column Justification | 5034 |
7.1.2.66 | mcPr | Matrix Column Properties | 5036 |
7.1.2.67 | mcs | Matrix Columns | 5036 |
7.1.2.68 | mPr | Matrix Properties | 5038 |
7.1.2.69 | mr | Matrix Row | 5039 |
7.1.2.70 | nary | n-ary Operator Function | 5041 |
7.1.2.71 | naryLim | n-ary Limit Location | 5042 |
7.1.2.72 | naryPr | n-ary Properties | 5043 |
7.1.2.73 | noBreak | No Break | 5044 |
7.1.2.74 | nor | Normal Text | 5045 |
7.1.2.75 | num | Numerator argument | 5046 |
7.1.2.76 | objDist | Object Distribution | 5048 |
7.1.2.77 | oMath | Office Math | 5049 |
7.1.2.78 | oMathPara | Math Paragraph | 5051 |
7.1.2.79 | oMathParaPr | Office Math Paragraph Properties | 5052 |
7.1.2.80 | opEmu | Operator Emulator | 5052 |
7.1.2.81 | phant | Phantom Function | 5053 |
7.1.2.82 | phantPr | Phantom Properties | 5054 |
7.1.2.83 | plcHide | Hide Placeholders (matrix) | 5054 |
7.1.2.84 | pos | Position (Bar) | 5055 |
7.1.2.85 | postSp | Post-Equation Spacing | 5056 |
7.1.2.86 | preSp | Pre-Equation Spacing | 5057 |
7.1.2.87 | r | Run | 5057 |
7.1.2.88 | rad | Radical Function | 5059 |
7.1.2.89 | radPr | Radical Properties | 5060 |
7.1.2.90 | rMargin | Right Margin | 5060 |
7.1.2.91 | rPr | Run Properties | 5061 |
7.1.2.92 | rSp | Row Spacing (Equation Array) | 5062 |
7.1.2.93 | rSpRule | Row Spacing Rule | 5063 |
7.1.2.94 | scr | Script | 5064 |
7.1.2.95 | sepChr | Delimiter Separator Character | 5065 |
7.1.2.96 | show | Phantom Show | 5066 |
7.1.2.97 | shp | Shape (Delimiters) | 5067 |
7.1.2.98 | smallFrac | Small Fraction | 5067 |
7.1.2.99 | sPre | Pre-Sub-Superscript Function | 5068 |
7.1.2.100 | sPrePr | Pre-Sub-Superscript Properties | 5069 |
7.1.2.101 | sSub | Subscript Function | 5070 |
7.1.2.102 | sSubPr | Subscript Properties | 5071 |
7.1.2.103 | sSubSup | Sub-Superscript Function | 5071 |
7.1.2.104 | sSubSupPr | Sub-Superscript Properties | 5072 |
7.1.2.105 | sSup | Superscript Function | 5073 |
7.1.2.106 | sSupPr | Superscript Properties | 5074 |
7.1.2.107 | strikeBLTR | Border Box Strikethrough Bottom-Left to Top-Right | 5074 |
7.1.2.108 | strikeH | Border Box Strikethrough Horizontal | 5075 |
7.1.2.109 | strikeTLBR | Border Box Strikethrough Top-Left to Bottom-Right | 5076 |
7.1.2.110 | strikeV | Border Box Strikethrough Vertical | 5077 |
7.1.2.111 | sty | style | 5078 |
7.1.2.112 | sub | Subscript argument | 5079 |
7.1.2.113 | subHide | Hide Subscript (n-ary) | 5081 |
7.1.2.114 | sup | Superscript argument | 5082 |
7.1.2.115 | supHide | Hide Superscript (n-ary) | 5084 |
7.1.2.116 | t | Text | 5084 |
7.1.2.117 | transp | Transparent (Phantom) | 5085 |
7.1.2.118 | type | Fraction type | 5086 |
7.1.2.119 | vertJc | Vertical Justification | 5087 |
7.1.2.120 | wrapIndent | Wrap Indent | 5087 |
7.1.2.121 | wrapRight | Wrap Right | 5088 |
7.1.2.122 | zeroAsc | Phantom Zero Ascent | 5089 |
7.1.2.123 | zeroDesc | Phantom Zero Descent | 5090 |
7.1.2.124 | zeroWid | Phantom Zero Width | 5091 |
Comments
Anonymous
February 24, 2007
So when are you going to release new ActiveX and .NET controls based on the new spec???Anonymous
June 04, 2007
Science and Nature, two premier science publications, are having difficulties with Word 2007’s elegant