This document describes or points to requirements for the layout and presentation of text in languages that use the Traditional Mongolian script. The target audience is developers of Web standards and technologies, such as HTML, CSS, Mobile Web, Digital Publications, and Unicode, as well as implementers of web browsers, ebook readers, and other applications that need to render Mongolian text.
This document describes the basic requirements for Mongolian script layout and text support on the Web and in eBooks. These requirements provide information for Web technologies such as CSS, HTML and digital publications about how to support users of Mongolian script languages. Currently the document focuses on the Traditional Mongolian script as used for Mongolian. The information here is developed in conjunction with a document that summarises gaps in support on the Web for Mongolian.
The editor's draft of this document is being developed by the Mongolian Layout Task Force, part of the W3C Internationalization Interest Group. It is published by the Internationalization Working Group. The end target for this document is a Working Group Note.
To make it easier to track comments, please raise separate issues or emails for each comment, and point to the section you are commenting on using a URL.
Some links on this page point to repositories or pages to which information will be added over time. Initially, the link may produce no results, but as issues, tests, etc. are created they will show up.
Links that have a gray color led to no content the last time this document was updated. They are still live, however, since relevant content could be added at any time. When the document is updated, links that now point to results will have their live colour restored.
The original text of this document was prepared by Nasun-urt and Hu Chitu. Richard Ishida reorganised the material and added the script overview.
See also the GitHub contributors list for the Mongolian Language Enablement project, and the discussions related to Traditional Mongolian script.
The aim of this document is to describe the basic requirements for Traditional Mongolian script layout and text support on the Web and in eBooks. These requirements provide information for Web technologies such as CSS, HTML and digital publications, and for application developers, about how to support users of the Mongolian script. The document currently focuses on texts using the Mongolian language.
The main purpose of this document is to provide standardization and guiding rules for the display and application of traditional Mongolian script in the web. However, the more complex layout requirements such as paper layout are not included in this document. Thus, this document includes the most basic rules of display of page and characters of the traditional Mongolian script, aiming at formulating the corresponding standards of web display and application of Mongolian script for the web application vendors to follow this standard of display and application of Mongolian script in the web.
The following terms and definitions apply to this standard.
This document is pointed to by a separate document, Mongolian Gap Analysis, which describes gaps in support for Mongolian on the Web, and prioritises and describes the impact of those gaps on the user.
Wherever an unsupported feature is indentified through the gap analysis process, the requirements for that feature need to be documented. The gap reports will typically point back to this document for more information.
As gaps in support for Mongolian are captured, the gaps can be brought to the attention of the relevant spec developer or the browser implementator community. The progress of such work is tracked in the Gap Analysis Pipeline.
This document should contain no reference to a particular technology. For example, it should not say "CSS does/doesn't do such and such", and it should not describe how a technology, such as CSS, should implement the requirements. It is technology agnostic, so that it will be evergreen, and it simply describes how the script works. The gap analysis document is the appropriate place for all kinds of technology-specific information.
To complement any content authored specifically for this document, the sections in the document also point to related, external information, tests, GitHub discussions, etc.
The document Language enablement index points to this document and others, and provides a central location for developers and implementers to find information related to various scripts.
The W3C also has a repository with discussion threads related to the Mongolian script, including requests from developers to the user community for information about how scripts/languages work, and a notification system that tracks issues in W3C working groups related to the Mongolian script. See a list of unresolved questions for Mongolian experts. Each section below points to related discussions. See also the repository home page.
The Mongolian script is an alphabet, ie. a writing system in which both consonants and vowels are indicated.
Modern Mongolian can be written using a subset of the letters available in the Mongolian Unicode block. The remainder are used for writing Todo, Sibe, and Manchu, or for writing foriegn words, especially in Tibetan and Sanskrit.
Mongolian text runs top to bottom in vertical lines and (unusually) the lines flow left to right.
The script is cursive, ie. letters in a word are joined. All letters join both on the left and right.
Words are separated by spaces, but also contain narrow spaces that precede suffixes and may produce shaping differences to the surrounding letters. These are part of the word, and the parts on either side should not be separated.
Modern Mongolian uses 16 basic consonant letters and 11 more for representing foreign sounds.
In the Traditional Mongolian alphabet vowels are written using 8 vowel letters, including one for foreign sounds.Mongolian has separate code points for each sound in Mongolian, but many of these look indistinguishable from each other when rendered. This creates difficulties for novices to reproduce Mongolian text without access to the source.
Vowel reduction is a significant feature of Mongolian. Non-initial short vowels are reduced to vestiges or to zero, and non-initial long vowels in the orthography are reduced to short vowel length.
Vowel harmony is another key feature, grouping vowels in a way that indicates a front or back position for the tongue root (ATR).
The script is monocameral.
There is a set of Mongolian digits.
Mongolian word suffixes are separated from the preceding word using U+202F NARROW NO-BREAK SPACE, rather than U+0020 SPACE. For example, the code points that make up the suffix “ ᠤᠨ” are: 0x202F 0x1824 0x1828.
U+202F NARROW NO-BREAK SPACE and a following suffix cannot appear at the beginning of a line. For example, shows the correct approach and shows an incorrect approach.
Inline selected text must overlap the Mongolian baseline, as shown in . Multi-line selection must follow the writing direction of the Mongolian script, i.e., text direction from top to bottom and from left to right, as shown in .
Striking cursor movement keys on the keyboard, including “←”, “→”, “↑”, “↓”, “Page Up”, “Page Down”, “Home” and “End”, should produce movement that follows the writing direction of the Mongolian script from top to bottom and from left to right. For example, the cursor moves to the left after striking the “←” key; the cursor moves to the right when striking the “→” key. The cursor moves down after striking the “↓” key. When the cursor reaches the bottom of the current line, and the key “↓” is pressed again, the cursor will move right and to the top of the next line, as shown in . In the case of the “↑” key, the opposite occurs.
The mouse pointer in text editing is shown in .
The scrollbar will scroll left and right when mouse wheel is scrolling, that is, the scrollbar will move left or the text will move right when mouse wheel is scrolling forward; the scrollbar will move right or the text will move left when mouse wheel is scrolling backward.
The cursor shape during text editing (shown in ) must be aligned at the base on the midpoint of the Mongolian script baseline, that is, the midpoint of the Mongolian script baseline overlaps the midpoint of the cursor, with the length no longer than the middle line between the two lines of the text, as shown in .
Mongolian has some specific requirements related to punctuation:
Mongolian names of Mongolian punctuation and writing direction are as shown in , namely the writing direction is the same as that in the graph. Need to clarify the meaning of this bullet.
Mongolian punctuation should be centered vertically, as shown in .
The “right line” in Mongolian writing is to the right of the text, and is used similarly to the underline of horizontal English and Chinese text. The “left line” is to the left of the text, and is used similarly to the overline of horizontal English and Chinese text. The strikethrough is a baseline-centered vertical line as shown in .
Underline, overline and strikethrough in mixed composition with other languages are shown in :
Lines alongside the text may break on the spaces between words. When doing so, the gaps introduced before suffixes by U+202F NARROW NO-BREAK SPACE and U+180E MONGOLIAN VOWEL SEPARATOR should not be skipped. Even though there is a gap, suffixes are considered part of the word. See an example in the second word of :
Due to the different height of Mongolian text, in order to ensure that every character is in fully displayed and the whole word looks beautiful, the height of each letter must keep in balance. The spaces between words must be different from the common gaps before suffixes, whose code point is U+202F NARROW NO-BREAK SPACE. See :
Line-breaking should not split words. shows correct line-breaking, without breaking the Mongolian words. shows incorrect line-breaking for “” and “”.
Text alignment includes "left alignment", "horizontal centering", and “right alignment ”, as well as “top alignment”, “vertical centering”, “bottom alignment”and “top-bottom alignment”.
"Left alignment ", "horizontal centering" and “right alignment” are the alignment rules that apply inside a line. “Top alignment”, “horizontal centering”, “bottom alignment” and “top-bottom alignment” are the alignment rules in a page or a paragraph of a multi-line text.
Among "left alignment", "horizontal centering" and “right alignment”, “horizontal centering” is a default option which means that the Mongolian text will align based on its baseline axis. “Left alignment” means that the text will move left a certain distance, which shows obvious differences compared with the text after setting “horizontal center”. “Right alignment” means that the text will move right a certain distance after, which shows obvious differences compared with the text after setting “horizontal center”.
Among “Top alignment”, “vertical center”, “bottom alignment” and “top-bottom alignment”, “top-bottom alignment” is a default option which means that the words in the upper and the lower boundary of a multi-line text in a paragraph or a page are all aligned. Its alignment method is that spaces in the text are stretched in the same proportion. “Top alignment” means that the words in the upper boundary of a multi-line text in a paragraph or a page are all aligned without considering the alignment of the lower boundary and stretching the space between words. “Vertical center” means the words in the upper and the lower boundary of a multi-line text in a paragraph or a page do not need to align and leave the same blank under the condition of no-stretching space between words.
Mongolian is aligned to a baseline that runs down the center of the writing, and all text is aligned to this baseline as shown in :
When mixed with other languages, the text in those languages should also be centre-aligned along the Mongolian baseline.
There is no obvious midcourt line in numbers and Latin. Therefore generally, half of the text height is regarded as a midcourt line position. When Mongolian script is mixed with numbers and Latin, the line of half of the text height should be aligned with Mongolian midcourt line. When font size of numbers is the same as Mongolian’s, it will be slightly larger, so some handling methods should be taken to avoid the problem, such as the methods listed in .
For mixed arrangements with Chinese or Japanese, note the following:
The display of these controls needs to pay attention to the direction of the output. That is to say, the primary display of the number 1, 2, 3, etc. is from left to right. The effect of the following code is as shown in . Note how the text is centered on the vertical midline. The separator dots for the numbering are not centre-aligned. We should probably mention that. Also, shouldn't the numbers be rotated counter-clockwise?
Generally, landscape is the default Mongolian format, as shown in .
By default, pages should scroll from left to right, as shown in .
When the amount of text exceeds the prescribed space available, a scroll bar needs to be displayed. The default display position of the scroll bar is along the bottom of the corresponding space. (The simultaneous display of both horizontal and vertical scroll bars has not been installed).
Columns in Mongolian text should be divided vertically.
The illustrations here include ordinary picture formats, textboxes, charts, media objects and so on, all of which are called illustrations in what follows. There are many ways (as shown in ) of mixing the arrangements of text and illustrations but, no matter which way is used, some principles need to be obeyed.
When setting writing-mode:tb-lr
using CSS (grammar will have a little difference according to various browsers), the table will support vertical display feature of Mongolian script. When setting default options for the text in a table, it will display horizontally centered, that is, the upper and the lower center lines of the table cell will align at the center line of the baseline of the Mongolian text, as shown in .
All input controls need to be adjusted to match the characteristics of the vertically typeset Mongolian text. For example, controls like text fields and buttons need to support vertical input and display of text, and furthermore the cursors in text and passwords need to conform to the cursor style as shown in .
The select box appearing in the following HTML code should be displayed as shown in . According to the default setting, the scroll bar is at the bottom and starts at the left. To see the contents at the end of the list, it scrolls from left to right. The scrolling of the mouse wheel should be in accordance with illustration in . While selecting a column, the selected text and the selected background color should conform to the principle of aligning to the Mongolian vertically-centered baseline (see the descriptions in ).
Textarea is an important control, and is required in the text input, edit, and display. Scrollbar movement accords with requirements of the select control in . The display and moving direction of the cursor should be consistent with the standard for cursor movement in . In some browsers, there are functions for stretching the size of the textarea. The stretching icon should be in the lower right corner, and the textarea scaling accords with the mouse dragging. The rows and cols attribute of textarea are the opposite of those in horizontal text. Its specific attributes are as the following: rows {int} : showing the column number and cols {int} : showing the row number.
The label control mainly considers text midcourt line aligning principles. ( See the descriptions in ). The label display for the following code is shown in .
As shown in , which is an example fieldset generation with the following code, the components are aligned along the centred-vertical Mongolian baseline.
Currently, there are some main characters in applied traditional Mongolian script, including basic Mongolian characters, symbols and Mongolian numbers.