9 Formal definitions of character content architecture dependent data types 9.1 Introduction This paragraph contains the formal definitions, in ASN.1 notation (defined in ISO 8824), of the data types that are character content architecture dependent. These data types are: - the data type to represent the character content architecture specific presentation attributes in basic components, presentation styles and default value lists; - the data type to represent the character content architecture specific coding attributes in content portions; - the data type to represent the non-basic values of the character content architecture presentation attributes and control function parameters in the document profile; - the data type to represent the non-basic values of the character content architecture coding attributes in the document profile; - the data type to represent the non-standard default values of the character content architecture presentation and coding attributes in the document profile. 9.2 Representation of presentation attributes The data type "Character-Attributes" contains a set of subordinate data types that specify the character presentation attributes. Some of these subordinate data types are elementary but others are structured and are themselves made up of subordinate data types. The format of these data types is given below. The subset of subordinate data types that may occur within a particular instance of the data type "Character- Attributes" depends upon the particular character content architecture level that is specified. Character-Presentation-Attributes { 2 8 1 6 2 } DEFINITIONS ::= BEGIN EXPORTS Character-Attributes, One-Of-Four-Angles, One-Of-Two-Angles, Alignment, Graphic-Rendition, Kerning-Offset, Proportional-Line-Spacing, Pairwise-Kerning; Character-Attributes::= SET { character-path [0] IMPLICIT One-Of-Four-Angles OPTIONAL, line-progression [1] IMPLICIT One-Of-Two-Angles OPTIONAL, character-orientation[2] IMPLICIT One-Of-Four-Angles OPTIONAL, initial-offset [3] IMPLICIT Measure-Pair OPTIONAL, character-spacing [6] IMPLICIT INTEGER OPTIONAL, line-spacing [7] IMPLICIT INTEGER OPTIONAL, alignment [8] IMPLICIT Alignment OPTIONAL, line-layout-table [9] IMPLICIT Layout-Table OPTIONAL, graphic-rendition [10]IMPLICIT Graphic-Rendition OPTIONAL, formatting-indicator [11]IMPLICIT Formatting-Indicator OPTIONAL, character-fonts [12]IMPLICIT Character-Fonts OPTIONAL, graphic-char-subrepertoire[13] IMPLICIT INTEGER OPTIONAL, itemization [14] IMPLICIT Itemization OPTIONAL, widow-size [15] IMPLICIT INTEGER OPTIONAL, orphan-size [16] IMPLICIT INTEGER OPTIONAL, Fascicle VII.6 - Rec. T.416 1 graphic-character-sets[17]IMPLICIT OCTET STRING OPTIONAL, indentation [19] IMPLICIT INTEGER OPTIONAL, kerning-offset [20]IMPLICIT Kerning-Offset OPTIONAL, proportional-line-spacing[21]IMPLICIT Proportional-Line-spacing OPTIONAL, pairwise-kerning [22] IMPLICIT Pairwise-Kerning OPTIONAL, first-line-offset [23]IMPLICIT INTEGER OPTIONAL, coding extension announcers[24] IMPLICIT OCTET STRING OPTIONAL } One-Of-Four-Angles ::= INTEGER { d0 (0), d90 (1), d180(2), d270(3) } One-Of-Two-Angles ::= INTEGER { d90 (1), d270(3) } Measure-Pair ::= SEQUENCE { horizontal [0] IMPLICIT INTEGER, vertical [0] IMPLICIT INTEGER } Alignment ::= INTEGER { start-aligned(0), end-aligned(1), centred (2), justified(3) } Layout-Table ::= SET OF Tabulation-Stop Tabulation-Stop ::= SET { tabulation-reference [0] IMPLICIT NumericString, tabulation-position [1] IMPLICIT INTEGER, alignment [2] IMPLICIT INTEGER { start-aligned (0), end-aligned (1), centred(2), aligned-around (3) } alignment-character-string [3] IMPLICIT OCTET STRING } -- string of graphic characters from the set of -- graphic elements specified by the presentation -- attributes "graphic character sets" and -- "graphic character subrepertoire" Graphic-Rendition ::= SET OF Graphic-Rendition-Aspect Character-Fonts ::= SET { primary-font [0] IMPLICIT Font-Type OPTIONAL, first-alternative-font [1] IMPLICIT Font-Type OPTIONAL, second-alternative-font [2] IMPLICIT Font-Type OPTIONAL, third-alternative-font [3] IMPLICIT Font-Type OPTIONAL, fourth-alternative-font [4] IMPLICIT Font-Type OPTIONAL, fifth-alternative-font [5] IMPLICIT Font-Type OPTIONAL, sixth-alternative-font [6] IMPLICIT Font-Type OPTIONAL, seventh-alternative-font [7] IMPLICIT Font-Type OPTIONAL, eighth-alternative-font [8] IMPLICIT Font-Type OPTIONAL, ninth-alternative-font [9] IMPLICIT Font-Type OPTIONAL } Font-Type ::= SET { font-size [0] IMPLICIT INTEGER, font-identifier [1] IMPLICIT INTEGER } Graphic-Rendition-Aspect::= INTEGER { cancel (0), increased-intensity (1), decreased-intensity (2), italicized(3), underlined(4), 2 Fascicle VII.6 - Rec. T.416 slowly-blinking (5), rapidly-blinking (6), negative-image (7), crossed-out (9), primary-font (10), first-alternative-font (11), second-alternative-font (12), third-alternative-font (13), fourth-alternative-font (14), fifth-alternative-font (15), sixth-alternative-font (16), seventh-alternative-font (17), eighth-alternative-font (18), ninth-alternative-font (19), doubly-underlined (21) normal-intensity (22), not-italicized (23), not-underlined (24), steady (25), variable-spacing (26), positive-image (27), not-crossed-out (29), not-variable-spacing (50) } Formatting-Indicator ::= INTEGER { no (0), yes (1) } Itemization ::= SET { identifier-alignment [0]IMPLICIT INTEGER { no-itemization (0), start-aligned (1), end-aligned (2) } identifier-start-offset [1] IMPLICIT INTEGER OPTIONAL, identifier-end-offset [2] IMPLICIT INTEGER OPTIONAL } Kerning-Offset ::= SET { start-offset [0]IMPLICIT INTEGER, end-offset [1]IMPLICIT INTEGER } Proportional-Line-Spacing::= INTEGER { no (0), yes (1) } Pairwise-Kerning ::= INTEGER { no (0), yes (1) } END 9.3 Representation of coding attributes Character-Coding-Attributes::= { 2 8 1 6 3 } DEFINITIONS ::= BEGIN EXPORTS Character-Coding-Attributes; Character-Coding-Attributes::= SET { } --no character coding attributes are defined --in this part of ISO 8613 END 9.4 Representation of non-basic features and non-standard defaults Character-Profile-Attributes { 2 8 1 6 4 } DEFINITIONS ::= BEGIN EXPORTS Char-Presentation-Feature, Character-Coding-Attribute, Character-Content-Defaults; IMPORTS One-Of-Four-Angles, One-Of-Two-Angles, Alignment, Graphic-Rendition, Fascicle VII.6 - Rec. T.416 3 Kerning-Offset, Proportional-Line-Spacing, Pairwise-Kerning; FROM Character-Presentation-Attributes; --see  9.2 Char-Presentation-Feature ::= CHOICE { character-path [0]IMPLICIT One-Of-Four-Angles, line-progression [1]IMPLICIT One-Of-Two-Angles, character-orientation [2]IMPLICIT One-Of-Four-Angles, character-spacing [6]IMPLICIT INTEGER, line-spacing [7]IMPLICIT INTEGER, alignment [8]IMPLICIT Alignment, graphic-rendition [10]IMPLICIT Graphic-Rendition OPTIONAL, graphic-char-subrepertoire [13]IMPLICIT INTEGER, graphic-character-sets [17]IMPLICIT OCTET STRING } Character-Coding-Attribute::= NULL --no character coding attributes are defined --in this Recommendation. Character-Content-Defaults::= SET { character-path [0]IMPLICIT One-Of-Four-Angles OPTIONAL, line-progression [1]IMPLICIT One-Of-Two-Angles OPTIONAL, character-orientation [2]IMPLICIT One-Of-Four-Angles OPTIONAL, character-spacing [6]IMPLICIT INTEGER OPTIONAL, line-spacing [7]IMPLICIT INTEGER OPTIONAL, alignment [8]IMPLICIT Alignment OPTIONAL, graphic-rendition [10]IMPLICIT Graphic-Rendition OPTIONAL, graphic-char-subrepertoire [13]IMPLICIT INTEGER OPTIONAL, widow-size [15]IMPLICIT INTEGER OPTIONAL, orphan-size [16]IMPLICIT INTEGER OPTIONAL, graphic-character-sets [17]IMPLICIT OCTET STRING OPTIONAL, indentation [19]IMPLICIT INTEGER OPTIONAL, kerning-offset [20]IMPLICIT Kerning-Offset OPTIONAL, proportional-line-spacing [21]IMPLICIT Proportional-Line-spacing OPTIONAL, pairwise-kerning [22]IMPLICIT Pairwise-Kerning OPTIONAL } END 10 Graphic characters The set of graphic characters used in the content of a basic component, and their coded representations, are specified by the presentation attributes "graphic character sets" and "graphic character subrepertoire" and the associated control functions, viz. the code extension control functions and the control function IGS (Identify Graphic Subrepertoire) as described below: - graphic character sets: this presentation attribute specifies the graphic character sets designated and/or invoked at the beginning of the basic component. The specification of the graphic character sets by this attribute implies the definition of a repertoire of graphic characters and of a unique coded representation for each character of that repertoire; - graphic character subrepertoire: this presentation attribute can be used, when the graphic character sets designated are those of ISO 6937, to restrict the repertoire of graphic characters to a subset of the repertoire implied by the specification of the graphic character sets. Use of this attribute does not affect the coded representations of the graphic characters; 4 Fascicle VII.6 - Rec. T.416 - code extension control functions: these control functions can be used within the content of a basic component to alter the designations and/or invocations of graphic character sets from those specified by the presentation attribute "graphic character sets"; - IGS (Identify Graphic Subrepertoire): this control function can be used within the content of a basic component, when the graphic character sets designated are those of ISO 6937, to alter the subrepertoire from that specified by the presentation attribute "graphic character subrepertoire". When the presentation attributes "graphic character sets" and "graphic character subreper- toire" are not specified for a basic component, their values are determined using the defaulting mechanism defined in Recommendation T.412, as for any other presentation attribute. 11 Definition of control functions and the character SPACE Control functions are classified in the following four categories: - shared control functions, including code extension control functions, which are available to all classes of character content architecture; - layout control functions which are available only to formatted form and formatted processable form character content architectures; - logical control functions which are available only to processable form and formatted processable form character content architectures; - delimiters which are used to delimit graphic characters and/or shared control functions introduced as a result of a formatting process. The delimiters are available only to formatted processable form character content architectures. The control functions in these four categories are defined in  11.1 to 11.4 respectively,  11.5 defines the character SPACE. The allocation of control functions to categories is summarized in Table 3/T.416. Control functions that have not been included explicitly in this section are: - the sequence introducers ESC (Escape) and CSI (Control Sequence Introducer) that are permitted to be used in the character content architecture when required to represent a graphic character or a control function; - line terminators: a) a soft line terminator is represented by the control function CR (Carriage Return) then LF (Line Feed), in that order, where the CR and LF are enclosed between a pair of delimiters SOS (Start Of String) and ST (String Terminator); b) a hard line terminator is represented by a control function LF (Line Feed) that immediately follows either a control function CR (Carriage Return) or another LF where the entire sequence of CR and LF(s) is NOT enclosed between a pair of delimiters SOS (Start Of String) and ST (String Terminator). 11.1 Shared control functions 11.1.1 CR - Carriage return A control function which causes the active position to be moved to the line home position but not to be moved in the direction of lien progression. Note - CR is used in conjunction with the control function LF (Line Feed) to move the active position to the line home position at the beginning of a new line of text. It is also used to move the active position to the line home position, for example, after an item identifier (see  7.1.11). CR should not be used to cause character images to be superimposed. Fascicle VII.6 - Rec. T.416 5 TABLE 3/T.416 Control functions w ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿ ³ wShared control functionsw ³ ³ ³ ³ CR Carriage return ³ ³ GCC Graphic character composition ³ ³ IGS Identify graphic subrepertoire ³ ³ LF Line feed ³ ³ PLD Partial line down ³ ³ PLU Partial line up ³ ³ SCS Set character spacing ³ ³ SGR Select graphic rendition ³ ³ SHS Select character spacing ³ ³ SLS Set line spacing ³ ³ SRS Start reverse string ³ ³ STAB Selective Tabulation ³ ³ SUB Substitute Character ³ ³ SVS Select line spacing ³ ³ VPB Line position backward ³ ³ VPR Line position relative ³ ³ Code extension control functions ³ ³ ³ ³ wLayout control functionsw ³ ³ ³ ³ BS Backspace ³ ³ HPB Character position backward ³ ³ HPR Character position relative ³ ³ JFY No justify ³ ³ SACS Set additional character separation ³ ³ SRCS Set reduced character separation ³ ³ SSW Set SPACE width ³ ³ ³ ³ wLogical control functionsw ³ ³ ³ ³ BPH Break permitted here ³ ³ NBH No break here ³ ³ PTX Parallel texts ³ ³ ³ ³ wDelimitersw ³ ³ ³ ³ SOS Start of string ³ ³ ST String terminator ³ ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ 11.1.2 GCC - Graphic character composition A control function with one parameter which specifies that two or more graphic characters are to be combined into one graphic symbol. The value of the parameter is 0, 1 or 2. GCC with the parameter value 0 indicates that the following two graphic characters are to be presented as a single symbol. GCC with the parameter value 1 indicates the start and GCC with the parameter value 2 indicates the end of a string of graphic characters that are to be presented as a single symbol. The default value of the parameter is 0. 11.1.3 IGS - Identify graphic subrepertoire 6 Fascicle VII.6 - Rec. T.416 A control function with a selective parameter which is used to indicate that a subrepertoire of the graphic character repertoire of ISO 6937 is used in the text. All graphic character sets that Fascicle VII.6 - Rec. T.416 7 are used to represent the indicated graphic character subrepertoire must be explicitly or implicitly designated, but need not be invoked, prior to the occurrence of IGS. The identification f the graphic character subrepertoire may be changed at any point within a document and becomes effective immediately. No graphic characters other than those of the specified subrepertoire shall be used in the text following the occurrence of IGS. The effect of a graphic character subrepertoire identification ceases upon the next occurrence of: - another IGS; - the end of the current basic object; - the designation of any graphic character set. The default value of the parameter is zero. A non-zero parameter value is the identifier assigned to a subrepertoire if the repertoire of ISO 6937 in accordance with the registration procedure specified in ISO 7350. The parameter value zero identifiers the entire repertoire of the currently designated graphic character sets. In the absence of IGS, the subrepertoire identified by the presentation attribute "graphic character subrepertoire" applies or the entire repertoire of the currently designated graphic character sets otherwise. Note - The use of IGS in document application profiles based on the T.410 Series is deprecated. IGS is included in this part of ISO 8613 only for compatibility with some existing applications such as those based upon Recommendation T.61 (1984). 11.1.4 LF - Line feed A control function which causes the active position to be advanced in the direction of line progression but not to be moved in the direction of the character path. The amount of movement is that specified by the most recent occurrence either of the control functions SLS (Set Line Spacing) or SVS (Select Line Spacing) if any, or otherwise by the presentation attribute "line spacing". LF is restricted to be used in the following cases: - at the beginning of the content of a basic layout component; - immediately following a control function CR (Carriage Return); - immediately following another LF. 11.1.5 PLD - Partial line down A control function which causes either the start of subscript rendition or the end of superscript rendition of graphic characters. When superscript rendition is in effect, it is terminated by PLD; otherwise, subscript rendition is initiated by PLD. Any occurrence of PLD to start subscript rendition shall be followed by a control function PLU (Partial Line Up) in the same line before another PLD or control function LF (Line Feed) is used. PLD does not affect the position of any (graphic) lines used to implement the graphic rendition 'underlined', 'crossed-out' or 'doubly underlined' when such a graphic rendition is in effect prior to the occurrence of PLD. Note 1 - The implementation of the subscript rendition initiated by PLD may be accomplished with special character fonts and/or movement of the active position not exceeding a half line space. Note 2 - The graphic rendition 'underlined' may have been effected, prior to the occurrence of PLD, either by the control function SGR (Select Graphic Rendition) or by the non-spacing underline character (see ISO 6937). 11.1.6 PLU - Partial line Up A control function which causes either the start of superscript rendition of graphic characters. 8 Fascicle VII.6 - Rec. T.416 When subscript rendition is in effect, it is terminated by PLU; otherwise, superscript rendition is initiated by PLU. Any occurrence of PLU to start superscript rendition shall be followed by a control function PLD (Partial Line Down) in the same line before another PLU or control function LF (Line Feed) is used. PLU does not affect the position of any (graphic) lines used to implement the graphic rendition 'underlined', 'crossed-out' or 'doubly underlined' when such a graphic rendition is in effect prior to the occurrence of PLU. Note 1 - The implementation of the subscript rendition initiated by PLU may be accomplished with special character fonts and/or movement of the active position not exceeding a half line space. Note 2 - The graphic rendition 'underlined' may have been effected, prior to the occurrence of PLU, either by the control function SGR (Select Graphic Rendition) or by the non-spacing underline character (see ISO 6937). 11.1.7 SCS - Set character spacing A control function with one numeric parameter which specifies the character spacing to be applied to constant spacing fonts in subsequent text. The specified character spacing takes effect immediately and remains in effect until it is changed by a subsequent occurrence of either SCS or the control function SHS (Select Character Spacing) in the current basic component. The character spacing is expressed as an integral multiple of SMUs. The default value of the parameter is the equivalent of 120 BMUs. 11.1.8 SGR - Select graphic rendition A control function with one or more selective parameters which specify one or more graphic rendition aspects for graphic characters and space characters in the subsequent text. The specified graphic rendition(s) takes effect immediately and remains in effect until a subsequent occurrence of SGR in the basic object. The meaning of the parameter value is shown in Table 4/T.416. The default value of the parameter is 0. Any graphic rendition aspect specified by an occurrence of SGR, with the exceptions as noted in Notes 2 and 3 below, is combined with the graphic rendition aspects that are in effect prior to that occurrence of SGR as a result of either an earlier occurrence of SGR or the presentation attribute "graphic rendition" of the current basic object. When SGR is used to start underlining (singly or doubly), or crossing out, within the scope of subscript or superscript image - see control functions PLD (Partial Line Down) and PLU (Partial Line Up), any lines used to implement such a graphic rendition are lowered or raised in order that the graphic rendition concerned applies to the subscript or superscript characters. Note 1 - Several parameter values can be used in combination, in order to obtain, for example, underlined italics. Note 2 - The default parameter value cannot be used in combination with any other parameter value. Note 3 - When a designated font is invoked, any specification of weight or posture by an SGR parameter value is ignored. This applies to the parameter values 1, 2, 3, 22 and 23. These parameter values are enabled when a primary or alternative font is invoked for which no designation has been made. Note 4 - The use of parameter values 26 and 50 in document application profiles based on the T.410 Series is deprecated. These values are included in this part of ISO 8613 only for compatibility with some existing applications such as those based upon Fascicle VII.6 - Rec. T.416 9 Recommendation T.61 (1984). 10 Fascicle VII.6 - Rec. T.416 TABLE 4/T.416 Parameter values for SGR w ÚÄÄÄÄÄÄÄÄÄÂÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿ ³ Value ³ Meaning ³ ÃÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ´ ³ 0 ³ default rendition (implementation-defined); cancels the ³ ³ ³ effect of any preceding occurrence of SGR and cancels ³ ³ ³ the effect of the presentation attribute "graphic rendition"; ³ ³ ³ invokes the primary font ³ ³ ³ ³ ³ 1 ³ bold or increased intensity ³ ³ ³ ³ ³ 2 ³ faint or decreased intensity ³ ³ ³ ³ ³ 3 ³ italicize ³ ³ ³ ³ ³ 4 ³ underlined ³ ³ ³ ³ ³ 5 ³ slowly blinking ³ ³ ³ ³ ³ 6 ³ rapidly blinking ³ ³ ³ ³ ³ 7 ³ negative image ³ ³ ³ ³ ³ 9 ³ crossed-out (characters still legible but marked as to be ³ ³ ³ deleted) ³ ³ ³ ³ ³ 10 ³ primary (default) font ³ ³ ³ ³ ³ 11 ³ first alternative font ³ ³ ³ ³ ³ 12 ³ second alternative font Fascicle VII.6 - Rec. T.416 11 ³ ³ ³ ³ ³ 13 ³ third alternative font ³ ³ ³ ³ ³ 14 ³ fourth alternative font ³ ³ ³ ³ ³ 15 ³ fifth alternative font ³ ³ ³ ³ ³ 16 ³ sixth alternative font ³ ³ ³ ³ ³ 17 ³ seventh alternative font ³ ³ ³ ³ ³ 18 ³ eighth alternative font ³ ³ ³ ³ ³ 19 ³ ninth alternative font ³ ³ ³ ³ ³ 21 ³ doubly underlined ³ ³ ³ ³ ³ 22 ³ normal intensity (neither bold nor faint) ³ ³ ³ ³ ³ 23 ³ not italicize ³ ³ ³ ³ ³ 24 ³ not underlined (neither singly nor doubly) ³ ³ ³ ³ ³ 25 ³ steady (not blinking) ³ ³ ³ ³ ³ 26 ³ variable spacing ³ ³ ³ ³ ³ 27 ³ positive image ³ ³ ³ ³ ³ 29 ³ not crossed-out ³ ³ ³ ³ 12 Fascicle VII.6 - Rec. T.416 ³ 50 ³ not variable spacing ³ ÀÄÄÄÄÄÄÄÄÄÁÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ Fascicle VII.6 - Rec. T.416 13 11.1.9 SHS - Select character spacing A control function with a selective parameter which specifies the character spacing to be applied to constant spacing fonts in subsequent text. The specified character spacing remains until it is changed by a subsequent occurrence of either SHS or the control function SCS (Set Character Spacing) in the current basic object. The meaning of the parameter value is: 0 120 BMUs 1 100 MBUs 2 80 BMUs 3 200 BMUs 4 400 BMUs The default value of the parameter is 0. 11.1.10 SLS - Set line spacing A control function with one numeric parameter which specifies the line spacing for subsequent text. The specified line spacing takes effect immediately and remains in effect until it is changed by a subsequent occurrence of either SLS or the control function SVS (Select Line Spacing) in the current basic component. The line spacing is expressed as an integral multiple of SMUs. The default value of the parameter is the equivalent of 200 BMUs. 11.1.11 SRS - Start reverse string A control function with one parameter which is used to indicate either the start or end of a string graphic characters that are to be imaged in the direction opposite to that of the immediately preceding text (see  5.2.4). SRS with parameter value 1 indicates the start of the string. SRS with parameter value 0 indicates the end of the string. Hard and soft line terminators shall not be used between SRS 1 and SRS 0. Any occurrence of the control functions PLD (Partial line Down), PLU (Partial Line Up), VPB (Line Position Backward) or VPR (Line Position Relative) within the string of characters delimited by SRS 1 and SRS 0 must be matched by an occurrence of the opposite control function within the string. Strings delimited by SRS may be nested. 11.1.12 STAB - Selective tabulation A control function with a selective parameter which references a tabulation stop position in an associated "line layout table" (see  7.1.13). This control function specifies the positioning of the subsequent text, until either the occurrence of another STAB or the end of the current line. This text is to be positioned at the referenced tabulation stop and aligned in accordance with the properties specified for that tabulation stop. No default value of the parameter is specified. 11.1.13 SUB - Substitute character A control function which is used in the place of a character that has been found invalid or in error. 11.1.14 SVS - Select line spacing A control function with a selective parameter which specifies the line spacing for subsequent text. The specified line spacing takes effect immediately and remains in effect until it is changed by a subsequent occurrence of either SVS or the control function SLS (Set Line Spacing) in the current basic object. 14 Fascicle VII.6 - Rec. T.416 The meaning of the parameter value is: 0 200 BMUs 1 300 MBUs 2 400 BMUs 3 100 BMUs 4 150 BMUs 9 600 BMUs The default value of the parameter is 0. 11.1.15 VPB - Line position backward A control function with one numeric parameter which causes the active position to be moved in the opposite direction to the line progression the number of SMUs specified by the parameter. The combined effect of all occurrences of the control functions VPB and VPR within a given line must be such that the active position is returned to the reference line before the occurrence of a hard or soft line terminator. The default value of the parameter is the equivalent of 100 BMUs. Note - The main purposes of VPB are to provide for positioning of parallel annotation and for explicit control for the positioning of superscripts. 11.1.16 VPR - Line position relative A control function with one numeric parameter which causes the active position to be moved in the direction to line progression the number of SMUs specified by the parameter. The combined effect of all occurrences of the control functions VPB and VPR within a given line must be such that the active position is returned to the reference line before the occurrence of a hard or soft line terminator. The default value of the parameter is the equivalent of 100 BMUs. Note - The main purposes of VPR are to provide for positioning of parallel annotation and for explicit control for the positioning of subscripts. 11.1.17 Code extension control functions This is a category of control functions used for the designation and invocation of graphic character sets. They are defined in ISO 6429 and their use is defined in ISO 2022. 11.2 Layout control functions 11.2.1 BS - Backspace A control function that causes the active position to be moved, in the direction opposite to the character path, a distance specified by the most recent occurrence either of the control functions SHS (Select Character Spacing) or SCS (Set Character Spacing), if any, or otherwise by the presentation attribute "character spacing". Note 1 - BS allows for the positioning of item identifiers (see  5.2.9) on systems which do not implement the control function HPB (Character Position Backward). It is included in this Recommendation only for compatibility with Recommendation T.61 (1984). Its use in other document application profiles based upon the T.410 Series is deprecated. It shall not be used to cause character images to be superimposed. Note 2 - The control function SSW (Set SPACE Width) has no effect on BS. 11.2.2 HPB - Character position backward A control function with one numeric parameter which causes the active position to be moved in the opposite direction to the character path the number of SMUs specified by the parameter. Fascicle VII.6 - Rec. T.416 15 The default value of the parameter is the equivalent of 120 BMUs. Note - The main purposes of HPB are to move the active position backwards from the line home position, and to provide for the positioning of parallel annotation. 16 Fascicle VII.6 - Rec. T.416 11.2.3 HPR - Character position relative A control function with one numeric parameter which causes the active position to be moved in the direction to the character path the number of SMUs specified by the parameter. The default value of the parameter is the equivalent of 120 BMUs. Note 1 - Although HPR has a control effect similar to that of one or more space characters, it does not have the graphic equivalence of space characters. Therefore, HPR does not cause spaces to be imaged in accordance with the current graphic rendition, such as underlined, possibly specified by a preceding occurrence of the control function SGR (Select Graphic Rendition). Note 2 - HPR also provides for the positioning of parallel annotation. 11.2.4 JFY - No justify A control function with a selective parameter which is used at the beginning of a line to indicate that the line must not be justified. It has no effect on subsequent lines. The only parameter value that is permitted to be used is zero, which is also the default parameter value. 11.2.5 SACS - Set additional character separation A control function with one numeric parameter which specifies increased escapement between graphic characters in subsequent text i.e. a positive val e for the inter- character space (see  5.2.1). The specified value applies after the first subsequent graphic character and remains in effect until the next occurrence of SACS or a control function SRCS (Set Reduced Character Separation) or until it is reset to 0 by a subsequent occurrence of a hard or soft line terminator. The parameter value is expressed in SMUs. The default value of the parameter is 0. 11.2.6 SRCS - Set reduced character separation A control function with one numeric parameter which specifies reduced escapement between graphic characters in subsequent text i.e. a negative val e for the inter- character space (see  5.2.1). The specified value applies after the first subsequent graphic character and remains in effect until the next occurrence of SRCS or a control function SACS (Set Additional Character Separation) or until it is reset to 0 by a subsequent occurrence of a hard or soft line terminator. The parameter value is expressed in SMUs. The default value of the parameter is 0. 11.2.7 SSW - Set SPACE width A control function with one numeric parameter which specifies the characters escapement associated with the character SPACE for subsequent text. The specified value takes effect immediately and remains in effect until it is changed by a subsequent occurrence of SSW or reset to the default value by a subsequent occurrence of a hard or soft line terminator. The parameter value is expressed in SMUs. No default parameter is specified. The default width of SPACE is equal to the character spacing if the current font has constant spacing and is otherwise determined by the font concerned. Fascicle VII.6 - Rec. T.416 17 11.3 Logical control functions 11.3.1 BPH - Break permitted here A control function which indicates a point where a line break must occur when text is formatted (see  12.2.1.3.2). 18 Fascicle VII.6 - Rec. T.416