Information technology — Processing languages — Document Style Semantics and Specification Language (DSSSL)
(draft) AMENDMENT 1: Extensions to DSSSL
Introduction
This amendment specifies additional flow object classes and additional formatting areas, and clarifies some existing definitions in ISO/IEC 10179:1996:
a) Additional flow object classes are defined to specify on flow object classes for online display. Additional formatting areas are defined to clarify formatting areas for inline-display area and inter-line attachment area.
b) Annex B (informative) summarizes and clarifies the existing types and symbols. This annex will be a key to considering future extensions to DSSSL.
c) Annex C (informative) specifies formal public identifiers and their associated characteristics for various line breaking and line composition methods.
d) Annex D (informative) summarizes and clarifies the grove plan and SGML property set.
e) Annex E (informative) summarizes and clarifies the flow object classes and characteristics.
f) Annex F (informative) summarizes and
clarifies the values of characteristics.
Abstract Application Program Interface to DSSSL Flow Object Tree
Add the following subclause after subclause 12.2.
12.2.1 API to Flow Object Tree
A DSSSL processor generates a flow object tree. The flow object tree contains information about the results of applying formatting specifications. DSSSL style editors operate on the flow object tree through an abstract application program interface. This API reports the following information:
- character, glyph and glyph-annotations
- line composition
- paragraph composition
- column-set composition
- page composition
- document composition
- documents' volume composition
The abstract API will include dynamic information relating to the document under construction. DSSSL may define a core interface for page composition. The API architecture is system independent.
Formatting Areas
Add the following subclauses after subclause 12.3.4.
12.3.5 Inline-display areas
DSSSL has the following conceptualized formatting areas:
- Display area
- Inline area
- Attachment area
Display areas may include other display areas as well as inline areas. Inline areas may also include conceptualized display areas known as inline-display areas. DSSSL defines an inline-display area as a "display area included within an inline area".
- display-area := (display-area* | inline-area*)
- inline-area := (inline-display-area* | contents*)
- inline-display-area := (inline-display-area* | contents*)
For examples, DSSSL has the following formatting areas for composition:
- (Main)
Display area
- (Sub)
Display area
- (Subsub) Display area ...
- Inline
area ...
- inline-display area ...
- Inline
area ...
- inline-display area ...
- (Sub)
Display area
12.3.6 Inter-line attachment areas
The concept of an attachment creates a link between one of
display area or inline area and an attachment area. The
attachment area for a display area shall be outside the display
area.
The attachment area for an inline area shall be within the
inter-line area between the current line and the immediately
following line, or the border adjacent to the next display area.
This amendment, therefore, extends the set
of DSSSL formatting areas to the following set:
- Display area
- Inline area
- Inline-display area
- Inter-line area
- Attachment area (for display area)
- Inter-line attachment area
Flow Object Classes
Add the following subclauses after subclause 12.6.28.4.
12.6.28.5 Display-window Flow Object Class
This clause defines an extended-online feature.
The display-window flow object class specifies
an abstract size for the display frame of an online display. The
display-window flow object class may get the top position of
current scroll flow object classes as its root class. The
display-window flow object class may be a recursive flow object
class. It has a single principal port, which accepts any
displayed flow objects.
This flow object has the following characteristics:
-- frame-type: one of the symbols window, dialogue, note, caution, alarm or warning. It specifies the type of window to be displayed. The default value is window.
-- frame-size: one of the symbols maximum-size, good-size or minimum-size. It specifies the relative size of window to be used online display. The default value is good-size. This actual values used to represent this characteristic will depend on frame-type characteristics and display devices.
12.6.28.6 Pop-up Flow Object Class
This clause defines an extended-online feature.
The pop-up flow object class provides information relating to a
pop-up area, or the edge area of the current window frame. It has
a single principal port, which accepts any displayed flow
objects.
This flow object has the following characteristics:
-- information-type: one of the symbols anything, warning, error, additional-information, note, origin-of-link, voice-annotation or semantic-annotation. It specifies the type of information to be placed into the pop-up window or the edge area of the current window on online display. The default value is anything.
NOTE: This flow object can be used to display any information, including position data relating to the grove structure.
12.6.28.7 Dialogue Flow Object Class
This clause defines an extended-online feature.
The dialogue flow object class is used to specify interactive
dialogues for online display. The dialogue flow object class
shall be placed at the front top of the screen display within a
display-window flow object class. Dialogue flow object classes may be treated as an interactive
flow object class. It has a single principal port, which accepts
any displayed flow objects.
This dialogue flow object has the following characteristics:
-- dialogue-type: one of the symbols request, acknowledgement, select-objects, select-of-list or interaction. The initial value is acknowledgement.
-- dialogue-return-type: one of the symbols yes-no-cancel, yes-no, OK-NO, OK, words or phrase. The initial value is OK.
12.6.29 Sound-Voice and Animation Flow Object Classes
This clause defines the sound-voice-and-animation feature.
The sound-voice and animation flow object classes is used for
sounds, voices and animations stored within an external entity. Flow objects of these classes may be inlined or
displayed as an online display. This
flow object is atomic.
12.6.29.1 Sound-voice Flow Object Class
This clause defines the sound-voice feature.
The sound-voice flow object class is used to specify sound and
voice data to be used in conjunction with an online display. The
sound-voice flow object class may be an atomic object on the
other flow object classes, and it may be recursive on itself,
depending on the sound-voice system being used. It has a single
principal port, which accepts any flow objects.
This flow object has the following characteristics:
-- output?: boolean specifying whether the flow object shall be output or not. This characteristics is not inherited. The default value is #t.
Other specifications are system independent.
12.6.29.2 Animation Flow Object Class
This clause defines the animation feature.
The animation flow object class specify animation on online
display. Animation flow object class may be
an atomic object on other flow object classes. It has a
single principal port, which accepts any flow objects.
This flow object has the following characteristics:
-- output?:boolean specifying whether the flow object shall be output rather than displayed and inlined. This characteristics is not inherited. The default value is #t.
Other specifications are system independent.
Annexes
Add the following annexes after Annex A.
- Annex B Types and symbols (informative)
- Annex C Formal public identifiers and their associated characteristics (informative)
- Annex D Grove plan and SGML property set (informative)
- Annex E Flow object classes and characteristics (informative)
- Annex F Values of characteristics (informative)