Reference number of working document:    ISO/IEC 10179:1996

FPDAM 2

Date:   2004-04-19

Reference number of document:    ISO/IEC JTC1 nnnn

Committee identification:    ISO/IEC JTC1/SC34 N0510

Secretariat:  Standards Council of Canada

# Information technology --- Processing languages --- Document Style Semantics and Specification Language (DSSSL)

FPDAM 2: Extensions to multilingual and complicated document styles

Warning

This document is not an ISO International Standard. It is distributed
for review and comment. It is subject to change without notice and may
not be referred to as an International Standard.

Recipients of this document are invited to submit, with their comments,
notification of any relevant patent rights of which they are aware and
to provide supporting documentation.

**Copyright notice**

This ISO document is a working draft or committee draft and is
copyright-protected by ISO. While the reproduction of working drafts or
committee drafts in any form for use by participants in the ISO
standards development process is permitted without prior permission from
ISO, neither this document nor any extract from it may be reproduced,
stored or transmitted in any form for any other purpose without prior
written permission from ISO.

Requests for permission to reproduce this document for the purpose of
selling it should be addressed as shown below or to ISO's member body in
the country of the requester:

*\[Indicate :*

*the full address*

*telephone number*

*fax number*

*telex number*

*and electronic mail address*

*as appropriate, of the Copyright Manager of the ISO member body
responsible for the secretariat of the TC or SC within the framework of
which the draft has been prepared\]*

Reproduction for sales purposes may be subject to royalty payments or a
licensing agreement.

Violators may be prosecuted.

Contents

Foreword [iv](#__RefHeading___Toc67909133)

Introduction [v](#__RefHeading___Toc67909134)

Flow Object Classes [1](#flow-object-classes)

[]{#__RefHeading___Toc67909133 .anchor}Foreword

ISO (the International Organization for Standardization) is a worldwide
federation of national standards bodies (ISO member bodies). The work of
preparing International Standards is normally carried out through ISO
technical committees. Each member body interested in a subject for which
a technical committee has been established has the right to be
represented on that committee. International organizations, governmental
and non-governmental, in liaison with ISO, also take part in the work.
ISO collaborates closely with the International Electrotechnical
Commission (IEC) on all matters of electrotechnical standardization.

International Standards are drafted in accordance with the rules given
in the ISO/IEC Directives, Part 2.

In the field of information technology, ISO and IEC have established a
joint technical committee, ISO/IEC JTC 1. Draft International Standards
adopted by the joint technical committee are circulated to national
bodies for voting. Publication as an International Standard requires
approval by at least 75 % of the national bodies casting a vote.

Attention is drawn to the possibility that some of the elements of this
International Standard may be the subject of patent rights. ISO and IEC
shall not be held responsible for identifying any or all such patent
rights.

Amendment 2 to ISO/IEC 10179:1996 was prepared by Joint Technical
Committee ISO/IEC JTC 1, *Information technology, Subcommittee SC 34,
Document description and processing languages*.

[]{#__RefHeading___Toc67909134 .anchor}Introduction

This amendment specifies additional flow object classes to support the
rendering for multilingual and comlicated document styles which have
been required by actual DSSSL users and stylesheet developers for
automatic rendering systems.

Information technology --- Processing languages --- Document Style
Semantics and Specification Language (DSSSL)

FPDAM2: Extensions to multilingual and complicated document styles

# Flow Object Classes

*Add the following list items after the list item of "---
may-violate-keep-after?" of **12.6.2 Display-group Flow Object Class**:*

-   ext-line-number: is s style object specifying characteristics to be
    determined to ext-line-number, and style of line number.

-   ext-line-number-start: is a number that specifies line number to
    start output. The default value is specified at
    declare-characteristic. This characteristics is inherited.

-   ext-line-number-position: is a either #f or a string that specifies
    the all position in display area to output line number. The default
    value is specified at declare characteristics. Type string is
    specified the position by the number counted the both sides of
    paralleled display area from the initial position of writing-mode.
    Thus, when the writing-mode is \'left-to-right with layout of
    simple-page-sequence, specifying the value as "2" means to display
    line-number on right side of main paragraph. When layout is 3
    columns using column-set-sequence, to display line-number on both
    sides of 2nd column, specify \"3 4\" as the value of
    characteristics. This characteristics is inherited.

-   ext-line-number-interval: is a positive integer that specifies the
    interval of output line-number. The default value is specified at
    declare-characteristics. This characteristics is inherited.

-   ext-line-number-sep: is a length specifying the length between
    line-number and display area. The default value is specified at
    declare-characteristics. This characteristics is inherited.

-   ext-line-number-side: is one of the symbols start, end, or both. It
    specifies the position of display area where line-number is
    displayed. This characteristics is overlapping characteristics to
    ext-line-number-position, however, when both characteristics are
    specified, ext-line-number-position has a priority. The default
    value is specified at declare-characteristics. This characteristics
    is inherited.

-   candidate-point-y: is a length specifying the candidate point of
    y-coordinate in display-group region area. The default value is 0pt.
    This characteristics is not inherited.

-   keep-with-next-table-row-count: is a number that specifies the
    number of table rows to be kept together with the area produced by
    flow object when keep-with-next? is #t.The default value is 0. This
    characteristics is not inherited.

-   keep-with-next-line-count: is a number that specifies the number of
    lines to be kept together within the are produced by flow object
    when keep-with-next? is #t. The default value is 0. This
    characteristics is not inherited.

-   keep-line-count: is a number that specifies the number of lines to
    be kept together within the are produced by flow object when keep?
    is #t, 'page, 'column-set, or 'column. The default value is 0. This
    characteristics is not inherited.

-   keep-priority: is an integer that specifies the priority of keep to
    the layout specification to be discarded as the result of processing
    when keep, keep-with-next, keep-with-previous are processed. This
    characteristics is not inherited when default value is specified.

-   enable-last-linebreak: is a boolean specifying whether line-break to
    the end of generated area is inserted or not. The default value is
    #f. This characteristics is not inherited.

-   basic-spacing: is a boolean specifying whether basic line
    positioning rule is aplied or not. The default value is #f.

-   line-adjustment: is a boolean specifying whether basic kerning rule
    of start and end of line is aplied or not. The default value is
    false.

-   numeric-unit-division: is a boolean specifying whether division
    methods toward numeric and unit is aplied or not. The default value
    is false.

-   treat-single-line-as-last-line: is a boolean specifying whether
    single line is treated as last line or not. This characteristics is
    mainly used when display FOC is specified quadding as justify and
    stylesheet writer does not expect single line to be justified. The
    default value is #f.

-   open-paren-space-length: is a length specifying the length between
    line head and open parenthesis. The default value is 0pt.

-   first-line-open-paren-space-length: is a length specifying the
    length between start position of first line of paragraph and open
    parenthesis.

-   continuous-number-base-position: is a boolean whether basic
    positioning methods toward continuous number is aplied or not. The
    default value is false.

-   space-addition: is a boolean specifying whether space adjustment
    methods toward English document is aplied or not. When value is true
    and line of document shall have space for justification, space is
    inserted between each alphabetical word. The default value is false.

-   last-line-characters: is a number that specifies the number of
    characters can be placed in last line. The default value is #f.

-   font-height: is a length specifying height of font by numeric
    expression. The default value is 0pt. This characteristics is not
    inherited.

-   font-width: is a length specifying width of font by numeric
    expression. The default value is 0pt. This characteristics is not
    inherited.

-   font-family-name: is either #f, indicating that any font family is
    acceptable, a string giving the font family name property of the
    desired font resource, or a list of (Language font-family-name) to
    specify multiple fonts. The initial value is isoserif

-   character-rotation: is one of the symbols 0, 90, 180, or 270. It
    specifies that floating direction on specofoed inline characters. 0
    means floating direction is same as the value of writing-mode. 90
    means specified characters\' floating direction is orthogonal to
    writing-mode. The default value is 0.

-   base-line-shift: is a length specifying the length from the base
    line. When the value is negative, base line is shifted up (or
    right). Base line is shifttd down (or left) on positive value. The
    default value is 0.

*Add the following list items after the list item of "--- writing-mode"
of **12.6.3 Simple-page-sequence Flow Object Class**:*

-   page-number-format: is an either #f or a string that specifies the
    format of page number. The default value is "1". This
    characteristics is not inherited.

-   page-number-restart: is a boolean specifying whether page number is
    re-calculated or not. The default value is #f. This characteristics
    is not inherited.

-   initial-page-number: is a number that specifies the initial value of
    page number. The default value is #f. This characteristics is not
    inherited.

*Add the following list items after the list item of "--- binding-edge"
of **12.6.4 Page-sequence Flow Object Class**:*

-   page-number-format: is an either #f or a string that specifies the
    format of page number. The default value is "1". This
    characteristics is not inherited.

-   page-number-restart: is a boolean specifying whether page number is
    re-calculated or not. The default value is #f. This characteristics
    is not inherited.

-   initial-page-number: is a number that specifies the initial value of
    page number. The default value is #f. This characteristics is not
    inherited.

*Add the following list items after the list item of "---
keep-with-next?" of **12.6.5 Column-set-sequence Flow Object Class**:*

-   keep-with-next-line-count: is a number that specifies the number of
    lines to be kept together within the are produced by flow object
    when keep-with-next? is #t. The default value is 0. This
    characteristics is not inherited.

-   keep-line-count: is a number that specifies the number of lines to
    be kept together within the are produced by flow object when keep?
    is #t, 'page, 'column-set, or 'column. The default value is 0. This
    characteristics is not inherited.

-   keep-priority: is an integer that specifies the priority of keep to
    the layout specification to be discarded as the result of processing
    when keep, keep-with-next, keep-with-previous are processed. This
    characteristics is not inherited when default value is specified.

*Add the following list items after the list item of "---
keep-with-next?" of **12.6.6 Paragraph Flow Object Class**:*

-   keep-with-next-line-count: is a number that specifies the number of
    lines to be kept together within the are produced by flow object
    when keep-with-next? is #t. The default value is 0. This
    characteristics is not inherited.

-   keep-line-count: is a number that specifies the number of lines to
    be kept together within the are produced by flow object when keep?
    is #t, 'page, 'column-set, or 'column. The default value is 0. This
    characteristics is not inherited.

-   keep-priority: is an integer that specifies the priority of keep to
    the layout specification to be discarded as the result of processing
    when keep, keep-with-next, keep-with-previous are processed. This
    characteristics is not inherited when default value is specified.

-   basic-spacing: is a boolean specifying whether basic line
    positioning rule is aplied or not. The default value is #f.

-   line-adjustment: is a boolean specifying whether basic kerning rule
    of start and end of line is aplied or not. The default value is
    false.

-   numeric-unit-division: is a boolean specifying whether division
    methods toward numeric and unit is aplied or not. The default value
    is false.

-   treat-single-line-as-last-line: is a boolean specifying whether
    single line is treated as last line or not. This characteristics is
    mainly used when display FOC is specified quadding as justify and
    stylesheet writer does not expect single line to be justified. The
    default value is #f.

-   open-paren-space-length: is a length specifying the length between
    line head and open parenthesis. The default value is 0pt.

-   first-line-open-paren-space-length: is a length specifying the
    length between start position of first line of paragraph and open
    parenthesis.

-   continuous-number-base-position: is a boolean whether basic
    positioning methods toward continuous number is aplied or not. The
    default value is false.

-   space-addition: is a boolean specifying whether space adjustment
    methods toward English document is aplied or not. When value is true
    and line of document shall have space for justification, space is
    inserted between each alphabetical word. The default value is false.

-   last-line-characters: is a number that specifies the number of
    characters can be placed in last line. The default value is #f.

-   font-height: is a length specifying height of font by numeric
    expression. The default value is 0pt. This characteristics is not
    inherited.

-   font-width: is a length specifying width of font by numeric
    expression. The default value is 0pt. This characteristics is not
    inherited.

-   font-family-name: is either #f, indicating that any font family is
    acceptable, a string giving the font family name property of the
    desired font resource, or a list of (Language font-family-name) to
    specify multiple fonts. The initial value is isoserif.

-   character-rotation: is one of the symbols 0, 90, 180, or 270. It
    specifies that floating direction on specofoed inline characters. 0
    means floating direction is same as the value of writing-mode. 90
    means specified characters\' floating direction is orthogonal to
    writing-mode. The default value is 0.

-   base-line-shift: is a length specifying the length from the base
    line. When the value is negative, base line is shifted up (or
    right). Base line is shifttd down (or left) on positive value. The
    default value is 0.

-   drop-character-number: is a number that specifies the number of
    characters can be setted as dropcap characters. The default value
    is 0. This characteristics is not inherited.

-   dropcap-height: is a length specifying height of dropcap region. The
    default value is 0pt. This characteristics is not inherited.

-   dropcap-width: is a length specifying width of dropcap region. The
    default value is 0pt. This characteristics is not inherited.

*Replace the list item of "--- font-family-name" of **12.6.6 Paragraph
Flow Object Class** with:*

-   font-family-name: is either #f, indicating that any font family is
    acceptable, a string giving the font family name property of the
    desired font resource, or a list of (Language font-family-name) to
    specify multiple fonts. The initial value is isoserif.

*Add the following list item after the list item of "---
break-after-priority" of **12.6.8 Line-field Flow Object Class**:*

-   inhibit-justify-space: is one of the symbols before, after, both, or
    #f specifying the inhibitation of space by quadding: 'justify
    before/after the FOC line-field. The default value is #f. This
    characteristics is not inherited.

*Add the following list item after the list item of "--- line-sep" of
**12.6.9 Sideline Flow Object**:*

-   sideline-shift: is a length specifying shifted length by relative
    coordinate. The default value is 0 pt. This characteristics is
    inherited.

*Add the following list item after the list item of "---
inhibit-line-breaks?" of **12.6.11 Character Flow Object Class**:*

-   character-rotation: is one of the symbols 0, 90, 180, or 270. It
    specifies that floating direction on specofoed inline characters. 0
    means floating direction is same as the value of writing-mode. 90
    means specified characters\' floating direction is orthogonal to
    writing-mode. The default value is 0.

-   base-line-shift: is a length specifying the length from the base
    line. When the value is negative, base line is shifted up (or
    right). Base line is shifttd down (or left) on positive value. The
    default value is 0.

-   font-height: is a length specifying height of font by numeric
    expression. The default value is 0pt. This characteristics is not
    inherited.

-   font-width: is a length specifying width of font by numeric
    expression. The default value is 0pt. This characteristics is not
    inherited.

-   font-family-name: is either #f, indicating that any font family is
    acceptable, a string giving the font family name property of the
    desired font resource, or a list of (Language font-family-name) to
    specify multiple fonts. The initial value is isoserif.

*Add the following list items after the list item of "---
keep-with-next?" of **12.6.14 Rule Flow Object Class**:*

-   keep-with-next-line-count: is a number that specifies the number of
    lines to be kept together within the are produced by flow object
    when keep-with-next? is #t. The default value is 0. This
    characteristics is not inherited.

-   keep-line-count: is a number that specifies the number of lines to
    be kept together within the are produced by flow object when keep?
    is #t, 'page, 'column-set, or 'column. The default value is 0. This
    characteristics is not inherited.

-   keep-priority: is an integer that specifies the priority of keep to
    the layout specification to be discarded as the result of processing
    when keep, keep-with-next, keep-with-previous are processed. This
    characteristics is not inherited when default value is specified.

*Add the following list item after the list item of "---
keep-with-next?" of **12.6.15 External-graphic Flow Object Class**:*

-   keep-with-next-line-count: is a number that specifies the number of
    lines to be kept together within the are produced by flow object
    when keep-with-next? is #t. The default value is 0. This
    characteristics is not inherited.

-   keep-line-count: is a number that specifies the number of lines to
    be kept together within the are produced by flow object when keep?
    is #t, 'page, 'column-set, or 'column. The default value is 0. This
    characteristics is not inherited.

-   keep-priority: is an integer that specifies the priority of keep to
    the layout specification to be discarded as the result of processing
    when keep, keep-with-next, keep-with-previous are processed. This
    characteristics is not inherited when default value is specified.

-   inhibit-expansion: is a boolean specifying whether an image is
    inhibited to expand or not when \`max or \'max-uniform is specified
    on characteristics scale. The default value is #f. This
    characteristics is not inherited.

-   inhibit-reduction: is a boolean specifying whether an image is
    inhibited to reduce or not when \`max or \'max-uniform is specified
    on characteristics scale. The default value is #f. This
    characteristics is not inherited

*Add the following list item after the list item of "---
keep-with-next?" of **12.6.16 Included-container-area Flow Object
Class**:*

-   keep-with-next-line-count: is a number that specifies the number of
    lines to be kept together within the are produced by flow object
    when keep-with-next? is #t. The default value is 0. This
    characteristics is not inherited.

-   keep-line-count: is a number that specifies the number of lines to
    be kept together within the are produced by flow object when keep?
    is #t, 'page, 'column-set, or 'column. The default value is 0. This
    characteristics is not inherited.

-   keep-priority: is an integer that specifies the priority of keep to
    the layout specification to be discarded as the result of processing
    when keep, keep-with-next, keep-with-previous are processed. This
    characteristics is not inherited when default value is specified.

*Add the following list item after the list item of "--- font-size" of
**12.6.17 Score Flow Object Class**:*

-   font-height: is a length specifying height of font by numeric
    expression. The default value is 0pt. This characteristics is not
    inherited.

-   font-width: is a length specifying width of font by numeric
    expression. The default value is 0pt. This characteristics is not
    inherited.

-   character-rotation: is one of the symbols 0, 90, 180, or 270. It
    specifies that floating direction on specofoed inline characters. 0
    means floating direction is same as the value of writing-mode. 90
    means specified characters\' floating direction is orthogonal to
    writing-mode. The default value is 0.

-   base-line-shift: is a length specifying the length from the base
    line. When the value is negative, base line is shifted up (or
    right). Base line is shifttd down (or left) on positive value. The
    default value is 0.

*Replace the list item of "--- font-family-name" of **12.6.17 Score Flow
Object Class** with:*

-   font-family-name: is either #f, indicating that any font family is
    acceptable, a string giving the font family name property of the
    desired font resource, or a list of (Language font-family-name) to
    specify multiple fonts. The initial value is isoserif.

*Add the following list item after the list item of "--- box-size-after"
of **12.6.18 Box Flow Object Class**:*

-   box-size-start: is a length that specifies the distance from the
    placement path to theedge of the box that is start the placement
    path in the line-progression direction. This shall apply only if the
    flow object is inline. The initial value is 0pt.

-   box-size-end: is a length that specifies the distance from the
    placement path to the edge of the box that is end the placement path
    in the line-progression direction. This shall apply only if the flow
    object is inline. The initial value is 0pt.

*Add the following list item after the list item of "---
keep-with-next?" of **12.6.18 Box Flow Object Class***:

-   keep-with-next-line-count: is a number that specifies the number of
    lines to be kept together within the are produced by flow object
    when keep-with-next? is #t. The default value is 0. This
    characteristics is not inherited.

-   keep-line-count: is a number that specifies the number of lines to
    be kept together within the are produced by flow object when keep?
    is #t, 'page, 'column-set, or 'column. The default value is 0. This
    characteristics is not inherited.

-   keep-priority: is an integer that specifies the priority of keep to
    the layout specification to be discarded as the result of processing
    when keep, keep-with-next, keep-with-previous are processed. This
    characteristics is not inherited when default value is specified.

*Add the following list item after the list item of "---
keep-with-next?" of **12.6.19 Side-by-side Flow Object Class**:*

-   keep-with-next-line-count: is a number that specifies the number of
    lines to be kept together within the are produced by flow object
    when keep-with-next? is #t. The default value is 0. This
    characteristics is not inherited.

-   keep-line-count: is a number that specifies the number of lines to
    be kept together within the are produced by flow object when keep?
    is #t, 'page, 'column-set, or 'column. The default value is 0. This
    characteristics is not inherited.

-   keep-priority: is an integer that specifies the priority of keep to
    the layout specification to be discarded as the result of processing
    when keep, keep-with-next, keep-with-previous are processed. This
    characteristics is not inherited when default value is specified.

*Add the following list item after the list item of "---
break-after-priority" of **12.6.21 Glyph-annotation Flow Object
Class**:*

-   ruby-process: is a boolean specifying whether ruby character spacing
    is aplied or not. When a value is true and the length of ruby
    characters are longer than base characters, all characters does not
    have space in between even though ruby characters are on non-ruby
    characters. If #f, space in between characters is applied. The
    default value is #f.

*Add the following list item after the list item of "---
keep-with-next?" of **12.6.23 Aligned-column Flow Object Class**:*

-   keep-with-next-line-count: is a number that specifies the number of
    lines to be kept together within the are produced by flow object
    when keep-with-next? is #t. The default value is 0. This
    characteristics is not inherited.

-   keep-line-count: is a number that specifies the number of lines to
    be kept together within the are produced by flow object when keep?
    is #t, 'page, 'column-set, or 'column. The default value is 0. This
    characteristics is not inherited.

-   keep-priority: is an integer that specifies the priority of keep to
    the layout specification to be discarded as the result of processing
    when keep, keep-with-next, keep-with-previous are processed. This
    characteristics is not inherited when default value is specified.

*Add the following list item after the list item of "---
break-after-priority" of **12.6.24 Multi-line-inline-note Flow Object
Class**:*

-   inline-note-kerning: is a boolean specifying whether kerning methods
    toward inline-note is applied or not. The default value is #f. This
    characteristics is not inherited.

*Add the following list item after last paragraph of **12.6.26.3
Subscript Flow Object Class**:*

-   subscript-depth: is a length specifying the depth of subscript. The
    default value is half of the font-size. This characteristics is not
    inherited.

*Add the following list item after last paragraph of **12.6.26.4
Superscript Flow Object Class***:

-   superscript-height: is a length specifying the height of
    superscript. The default value is half of the font-size. This
    characteristics is not inherited.

*Add the following list item after the list item of "---
keep-with-next?" of **12.6.27.1 Table Flow Object Class**:*

-   keep-with-next-line-count: is a number that specifies the number of
    lines to be kept together within the are produced by flow object
    when keep-with-next? is #t. The default value is 0. This
    characteristics is not inherited.

-   keep-line-count: is a number that specifies the number of lines to
    be kept together within the are produced by flow object when keep?
    is #t, 'page, 'column-set, or 'column. The default value is 0. This
    characteristics is not inherited.

-   keep-priority: is an integer that specifies the priority of keep to
    the layout specification to be discarded as the result of processing
    when keep, keep-with-next, keep-with-previous are processed. This
    characteristics is not inherited when default value is specified.

*Add the following list item after last paragraph of **12.6.27.5
Table-row Flow Object Class**:*

-   keep: is one of the following:

    -   #t meaning that the areas produced by this flow object shall be
        kept together within the smallest possible area.

    -   the symbol page indicating that the areas produced by the flow
        object shall lie within the same page; in this case, the flow
        object shall have an ancesteor flow object of class
        page-sequence

    -   the symbol column-set indicating that the areas produced by the
        flow object shall lie within the same column set; in this case,
        the flow object shall have an ancesteor flow object of class
        column-set-sequence.

    -   the symbol column indicating that the areas produced by the flow
        object shall lie within the same column set, and that the first
        column that each area spans in the column set shall be the same.

    -   #f indicating that this characteristics is to be ignored.

> This characteristics is not inherited. The default value is #f.

*Add the following list item after the list item of "---
float-out-line-numbers?" of **12.6.27.6 Table-cell Flow Object Class**:*

-   cell-row-height: is a length specifying the height of table-cell.
    The default value is #f. #f means that the height of table cell is
    changed according to contents. This value is not inherited.

*Add the following list items after the list item of "--- destination"
of **12.6.28.3 Link Flow Object Class**:*

-   bookmark?: is a boolean specifying weather this Link-FOC shall be
    bookmarked or not. The default value is #f. This characteristics is
    not inherited.

-   bookmark-level: is a number that specifies the level of bookmark
    hierarchy. When the difference of hierarchical value from child item
    is more than 2, this specification is discarded and treated as the
    child item directly below. Even If bookmark-level which is initially
    processed is more than 1, it is processed as 0. The default value
    is 0. This characteristics is inherited. The maximum hierarchical
    value is 32. When the value is specified more than 33, information
    of bookmark is discarded.

-   bookmark-title: is a either #f or a string that specifies bookmark
    title. When title string is not specified, bookmark is not
    generated. The initial value is #f. This characteristics is not
    inherited.

*Add the following subclauses after subclause **12.6.29.2**:*

### 12.6.30 Input-field Flow Object Class

This clause defines the input feature. The input-field flow object class
is needed to correspond conversion toward output format which can be
specified data input field.

Flow object input-field is used to express input filed. This flow object
has single principal port. This class of flow object is allowed only
#PCDATA. Therefore, this flow object cannot be held as descendants.
Input-field flow object is inline and it generates line filed as the
result of formatting.

-   field-type: is one of the symbols edit-box or combo-box. It
    specifies the type of input-field. The default value is edit-box.

-   field-width: is a length specifying the width of the input-field.
    The default value is auto. This characteristics is inherited.

-   field-height: is a length specifying the height of the input-field.
    The default value is specified font size on corresponding #PCDATA.
    This characteristics is inherited.

-   field-align: is one of the symbols start, end, center, inside, or
    outside. It specifies alignment of the input-field. The default
    value is start. This characteristics is inherited.

-   position-point-x: is a number specifying x-coordinate position point
    of input-field. The default value is 0. This characteristics is not
    inherited.

-   position-point-y: is a number specifying y-coordinate position point
    of input-field. The default value is 0. This characteristics is not
    inherited.

-   data-type: is one of the symbols lower-case-alph, or
    upper-case-alpha, or list of string or #f. It specifies the type of
    input data. The default value is #f means allowance of all
    characters. This characteristics is inherited.

> NOTE 132 To specify only number(0-9), specify this data type as (\"0\"
> \"1\" \"2\" \"3\" \"4\" \"5\" \"6\" \"7\" \"8\" \"9\"). Moreover, to
> specify hexadecimal numeral, add (\"a\" \"b\" \"c\" \"d\" \"e\" \"f\")
> to above data type and in case of octal notation, specify (\"0\" \"1\"
> \"2\" \"3\" \"4\" \"5\" \"6\" \"7\").

-   max-char-count: is a 0, positive integer or #f specifying maximum
    number of characters to be inputted into the field. The default
    value is #f means no limit. This characteristics is not inherited.

-   min-char-count: is a 0, positive integer or #f specifying minimum
    number of characters to be inputted into the field. The default
    value is #f means no limit. This characteristics is not inherited.

-   line-break-treatment: is one of the symbols preserve, ignore, or
    space. It specifies that process methods of line-break character
    when input date is reflected to instance. The default value is
    preserve. This characteristics is not inherited.

-   writing-mode: is one of the symbols left-to-right, right-to-left, or
    top-to-bottom. It specifies writing mode of input data. The default
    value is left-to-right.

-   language: is #f or a symbol specifying the ISO 639 language code in
    upper-case. This affects line composition in a system-dependent way.
    The initial value is #f.

-   country: is #f or a symbol specifying the ISO 3166 country code in
    upper-case. This affects line composition in a system-dependent way.
    The initial value is #f.