The flow object has a single principal port used for the content of
the area. The port shall accept flow objects of the following classes:
math-sequence, unmath, subscript, superscript, script, mark,
fence, fraction, radical, math-operator, grid, character,
or alignment-point. The spacing between the flow objects in the
contents may be adjusted based on their class and characteristics.
The applicable characteristics are:
| • math-display-mode: is
one of the symbols display or inline specifying
the style of formatting.
The initial value is display. |
When one of the mathematical formulae flow object classes
has a port that accepts the same classes as a math-sequence flow
object, then the spacing between the flow objects is adjusted
as if it were in a math-sequence flow object.
12.6.26.2 Unmath Flow Object Class
An unmath flow object is used to get words of natural language within
a mathematical formula. The characters in such words are spaced
differently from adjacent characters in a mathematical formula. The
flow object has a single principal port. The port shall accept any
inline
flow objects. These flow objects are positioned in the normal way.
The following characteristics are applicable:
| • writing-mode: is one of the symbols left-to-right,
right-to-left, or top-to-bottom. The direction
determined by the writing-mode
shall be perpendicular to the placement direction. The
initial value is left-to-right. |
| • glyph-alignment-mode: is one of the symbols base,
center, top, bottom, or font specifying the
alignment mode to be used for glyphs. font means that the
nominal alignment mode of the font in the flow object's writing-mode
should be used.
The initial value is font. |
| • font-family-name: is either #f, indicating that any font family
is acceptable, or a string giving the font family name property of
the desired font resource.
The initial value is iso-serif.
|
| ISO/IEC 10180 defines a mandatory font set for interchange
comprising the font families iso-serif, iso-sanserif,
and iso-monospace. |
|
| This is applicable when the glyph-alignment-mode: is font. |
| • font-weight: is either #f, indicating that any font weight is
acceptable, or one of the symbols not-applicable,
ultra-light, extra-light, light,
semi-light, medium, semi-bold, bold,
extra-bold, or ultra-bold, giving the weight property of
the desired font resource. The initial value is
medium.
This is applicable when the glyph-alignment-mode: is font. |
| • font-posture: is either #f, indicating that any posture is
acceptable,
or one of the symbols not-applicable, upright,
oblique, back-slanted-oblique, italic, or
back-slanted-italic, giving the posture property of the desired
font resource. The initial value is upright.
This is applicable when the glyph-alignment-mode: is font. |
| • font-structure: is either #f, indicating that any structure is
applicable, or one of the symbols not-applicable, solid,
or outline. The initial value is solid.
This is applicable when the glyph-alignment-mode: is font. |
| • font-proportionate-width: is either #f, indicating that any
proportionate width is acceptable, or one of the symbols
not-applicable, ultra-condensed, extra-condensed,
condensed, semi-condensed, medium,
semi-expanded, expanded, extra-expanded, or
ultra-expanded. The initial value is
medium.
This is applicable when the glyph-alignment-mode: is font. |
| • font-name: is either #f, indicating that any font name is
acceptable, or a string which is the public identifier for the font
name property of the desired font resource.
When the value is a string, the values of the
font-family-name:, font-weight:, font-posture:,
font-structure:, and font-proportionate-width:
characteristics are not used in font selection.
The initial value is #f.
This is applicable when the glyph-alignment-mode: is font. |
12.6.26.3 Subscript Flow Object Class
A subscript flow object is allowed in a math-sequence or in a port on
a math flow object that accepts the same flow object classes as a
math-sequence. A subscript flow object causes
its parent to position the
content of the subscript flow object as a subscript on the preceding
area. It has a single principal port.
12.6.26.4 Superscript Flow Object Class
A superscript flow object is allowed in a math-sequence or in a port
on a math flow object that accepts the same flow object classes as a
math-sequence. A superscript flow object causes its parent to
position the content of the superscript flow object as a superscript
on the preceding area. It has a single principal port.
12.6.26.5 Script Flow Object Class
The script flow object describes a seven-part area.
The parts described are:
| • the pre-superscript area, |
| • the pre-subscript area, |
| • the mid-superscript area, |
| • the mid-subscript area, |
| • the post-superscript area, |
| • the post-subscript area. |
The applicable ports are:
| • the principal port, which is used for the main content of the flow object. |
| • pre-sup, which is used for a superscript that shall be placed
before the base content in the direction determined by the writing-mode. |
| • pre-sub, which is used for a subscript that shall be placed
before the base content in the direction determined by the writing-mode. |
| • post-sup, which is used for a superscript that shall be placed
after the base content in the direction determined by the writing-mode. |
| • post-sub, which is used for a subscript that shall be placed
after the base content in the direction determined by the writing-mode. |
| • mid-sup, which is used for a superscript that shall be placed
above the base content. |
| • mid-sub, which is used for a subscript that shall be placed
below the base content. |
Each port shall accept flow objects of the same class as the port of
a math-sequence flow object.
The applicable characteristics are:
| • script-pre-align: is a symbol that specifies the alignment of
the pre-superscript and pre-subscript areas.
Permitted values are:
|
| • independent specifying that the pre-subscript and
pre-superscript areas shall be aligned independently of each other. |
| • pile specifying that the trailing edges of the areas
shall be aligned. |
| • sup-out specifying that the trailing edge of the area
associated with the pre-sup port shall be aligned with the leading edge
of the area associated with the pre-sub port. |
| • sub-out specifying that the trailing edge of the area
associated with the pre-sub port shall be aligned with the leading edge
of the area associated with the pre-sup port. |
| The initial value is independent. |
| • script-post-align: is a symbol that specifies the alignment of
the post-superscript and post-subscript areas.
Permitted values are:
|
| • independent specifying that the post-subscript and
post-superscript areas shall be aligned independently of each other. |
| • pile specifying that the leading edges of the areas
shall be aligned. |
| • sup-out specifying that the leading edge of the area
associated with the post-sup port shall be aligned with the trailing edge
of the area associated with the post-sub port. |
| • sub-out specifying that the leading edge of the area
associated with the post-sub port shall be aligned with the trailing edge
of the area associated with the post-sup port. |
| The initial value is independent. |
| • script-mid-sup-align: is a symbol that specifies the alignment of
the mid-superscript and base areas.
Permitted values are:
|
| • lead-edge specifying that the leading edges of the areas
shall be aligned. |
| • trail-edge specifying that the trailing edges of the areas
shall be aligned. |
| • center specifying that the center points of the areas
in the direction determined by the writing-mode shall be aligned. |
| The initial value is center. |
| • script-mid-sub-align: is a symbol that specifies the alignment of
the mid-subscript and base areas.
Permitted values are:
|
| • lead-edge specifying that the leading edges of the areas
shall be aligned. |
| • trail-edge specifying that the trailing edges of the areas
shall be aligned. |
| • center specifying that the center points of the areas
in the direction determined by the writing-mode shall be aligned. |
| The initial value is center. |
| • math-display-mode: is
one of the symbols display or inline specifying
the style of formatting.
The initial value is display. |
12.6.26.6 Mark Flow Object Class
The mark flow object describes a three-part area.
The parts described are:
The applicable ports are:
| • the principal port, which is used for the main content of the flow object. |
| • over-mark, which is used for the flow objects that shall be placed
in the over-mark area. |
| • under-mark, which is used for the flow objects that shall be placed
in the under-mark area. |
If the over-mark or under-mark port contains exactly one
flow object of class character, rule, or leader, then
that flow object shall be extended to cover the full width of the
base area.
| It is implementation- and font-dependent how character flow objects
are extended. |
|
Each port shall accept flow objects of the same class as the port of
a math-sequence flow object.
The applicable characteristics are:
| • math-display-mode: is
one of the symbols display or inline specifying
the style of formatting.
The initial value is display. |
12.6.26.7 Fence Flow Object Class
The fence flow object describes a three-part area.
The parts described are:
The fences should be extended according to the height of the base area.
| It is implementation- and font-dependent how this is achieved. |
|
The flow object has the following ports:
| • the principal port, which is used for the main content of the flow object.
It shall accept flow objects of the same class as the port of
a math-sequence flow object. |
| • open, which is used for the open-fence area.
It shall accept a single flow object of type character. |
| • close, which is used for the close-fence area.
It shall accept a single flow object of type character. |
The applicable characteristics are:
| • math-display-mode: is
one of the symbols display or inline specifying
the style of formatting.
The initial value is display. |
12.6.26.8 Fraction Flow Object Class
The fraction flow object class describes a three-part area.
The parts described are:
The flow object has the following ports:
| • numerator, which is used for the content that shall be placed
in the numerator area. |
| • denominator, which is used for the content that shall be
placed in the denominator area. |
Each port shall accept flow objects of the same class as the port of
a math-sequence flow object.
The applicable characteristics are:
| • fraction-bar: is an unlabeled sosofo containing a single
rule flow object to be used for the fraction-bar. The initial value
is a rule with all applicable inherited characteristics equal to their
initial values. |
| • numerator-align: is a symbol that specifies
the alignment of the numerator area and the fraction-bar area.
Permitted values are:
|
| • lead-edge specifying that the leading edges of the
areas
shall be aligned. |
| • trail-edge specifying that the trailing edges of the
areas
shall be aligned. |
| • center specifying that the center points of the areas
in the direction determined by the writing-mode shall be aligned. |
| The initial value is center. |
| • denominator-align: is a symbol that specifies
the alignment of the denominator area and the fraction-bar area.
Permitted values are:
|
| • lead-edge specifying that the leading edges of the
areas
shall be aligned. |
| • trail-edge specifying that the trailing edges of the
areas
shall be aligned. |
| • center specifying that the center points of the areas
in the direction determined by the writing-mode shall be aligned. |
| The initial value is center. |
| • math-display-mode: is
one of the symbols display or inline specifying
the style of formatting.
The initial value is display. |
12.6.26.9 Radical Flow Object Class
The radical flow object describes a three-part area.
The parts described are:
| • the radical-glyph area. |
The flow object has the following ports:
| • the principal port, which is used for the main content of the flow object. |
| • degree, which is used for the degree of the root of the flow object. |
Each port shall accept flow objects of the same class as the port of
a math-sequence flow object.
The applicable characteristics are:
| • math-display-mode: is
one of the symbols display or inline specifying
the style of formatting.
The initial value is display. |
| • radical: is an unlabeled sosofo containing a
single character flow object to be used for the radical glyph.
This characteristic is not inherited. If not specified,
it is defaulted in a system-dependent way. |
12.6.26.10 Math-operator Flow Object Class
The math-operator flow object describes a four-part area.
The parts described are: