ISO/IEC JTC1/SC18/WG8 **N1774**

# ISO/IEC JTC1/SC18/WG8 Document Processing and Related Communication--- Document Description and Processing Languages {#isoiec-jtc1sc18wg8-document-processing-and-related-communication-document-description-and-processing-languages .Heading-0-(nobreak)}

  -------------------- --------------------------------------------------
  **Title:**           Editing Instructions for ISO/IEC DIS 10179.2,
                       DSSSL

  **Source:**          WG8

  **Project:**         JTC1.19.6.1

  **Project editor:**  Sharon Adler

  **Status of          Approved Editing Instructions
  document:**          

  **Requested          Implementation by the DSSSL RG of WG8
  action:**            

  **Date**             10 February 1995

  **Distribution:**    WG8 and liaisons

  **References:**      WG8 N 1745, 1753

  **Supersedes:**      
  -------------------- --------------------------------------------------

# Editing Instructions for ISO/IEC DIS 10179.2, DSSSL {#editing-instructions-for-isoiec-dis-10179.2-dsssl .Heading-0}

# DSSSL Work Items

The following prioritized list of work items have been considered by the
DSSSL committee in the development of the final text of ISO/IEC 10179.
This list encompasses the topics to be discussed and text to be
developed and therefore constitutes preliminary editing instructions.

Each item on the list is categorized according to a priority indication:
1 (highly desirable for inclusion in IS), 2 (attempt to refine prior to
publication of IS), with a sub-categorization indicating the level of
effort to define, L (Large), M (Medium), S (Small).

## Highly Desirable for Inclusion in Final International Standard (1)

### Level of Effort --- Large (L)

1\. Write (or rewrite) definitions.

2\. Terminology/Picture coordination.

3\. Annexes containing examples: Western, Japanese and any others deemed
appropriate.

4\. Packaging of the DSSSL specification.

5\. HyTime tree unification and location addressing.

6\. Conformance statement and development of feature set.

7\. Instance overrides.

8\. Redoing the structure of the document.

9\. Breaking apart the Expression Language to have a simple subset.

10\. More comprehensive support for formatting and behavior in an online
environment.

a\. Provide support for a class of flow objects that have a concealed
mode and a revealed mode. This flow object can be switched between the
two modes interactively.

b\. Provide a flow object representing an icon (or perhaps a group of
icons of different types). In addition, a cover icon would be placed if
more than one icon was to be place relative to a line.

c\. Provide support for a class of linking mechanisms. In addition,
provide support for multiple locations as optional destinations.

d\. Provide a scroll flow object.

e\. Add simple synchronizing flow objects into the scroll flow object to
support the placement of icons and other margin notes.

f\. Provide support for the ability to specify presentation changes
after a link has been traversed. This may continue to be a Boolean.

11\. Write Disposition of Comments.

12\. BSI comment --- There needs to be a way to add to the list of
documents to be transformed based on the content of other documents
being transformed.

13\. Handle all editorial comments.

14\. Rewrite everything using terms "Transformation Language" and "Style
Language".

15\. Develop new pictures and redo existing pictures with "new"
terminology

16\. Tables

a\. optional inheritance by column

b\. rethink row and column separators (also in relation to border around
tables for "stacked, stair-step" table headers and footers)

c\. provide support for standard table types (CALS, ArborText, SoftQuad)
--- DSSSL-Lite

d\. change port called "text" (possibly change named ports for other
flow objects to principal port)

e\. support for "crossing-off" table cell

f\. line numbering and change marks

g\. write up DSSSL-Lite changes for tables

### Level of Effort --- Medium (M)

1.  Rewrite Introduction/Scope

2.  Develop appropriate Notations/Conventions, including typographic
    conventions and additional markup

3.  HyQ unification

4.  Review decoration areas and allow specification of different
    decoration areas for first and last of areas produced by flow
    objects.

5.  Improve design of query patterns to be more orthogonal and more
    functional

6.  Develop new syntax for construction of flow object tree

7.  Develop appropriate procedures for querying for DSSSL-Lite to
    include counting, accessing attribute values, and testing current
    location

8.  Develop appropriate fixed character-repertoire support for
    DSSSL-Lite

9.  Need general mechanism that allows the delay evaluation of an
    expression that is the value of a characteristic.

10. Develop the concept of breaks and spaces for DSSSL-Lite, including
    paragraph breaks without the use of process-node-set.

11. Develop indent for DSSSL-Lite

12. Review SGML linearizer

13. Break apart the regular expression facility to isolate the ability
    to deal with words

14. Review counting mechanisms to provide simpler functions to have page
    folios that are different for different page sequences.

15. Review support for handling character properties, font attributes,
    character sets and overrides on character properties.

### Level of Effort --- Small (S)

1.  Prepare Bibliography for all non-normative references

2.  Resolve issue over SDATA entity name versus replacement text

3.  Change short node names to longer more meaningful names in Tree
    Builder section

4.  Clarify characteristic set for format generated objects

5.  Provide ability to compress multiple spaces into a single space.

6.  Provide tab support in the style language.

7.  Allow tabs in the DSSSL specification as a separator.

8.  Provide a change characteristic that may be applied to characters so
    that change marking may be automatically generated by the formatter.

9.  Provide ability to indicate the version of the DSSSL specification.

10. Modify default for id? flow object constructor to #t rather than #f.

11. Decide what to do about root flow object (keep or get rid of it); if
    it is kept fix the allowed ports.

12. State that it is an error if either col-set-sequence-model or
    col-set-map is not specified on the column set sequence flow object.

13. Need port for paragraph flow object.

14. Change name of operator to something less generic for the
    mathematics flow object.

15. Review "group distribution" on the glyph annotation flow object.

16. Specify that the multi-line inline note is inlined.

17. Review different semantics for the scale characteristics

18. Add application flow object classes.

19. Reviews character classes for POSIX and regular expressions

20. Make grid-end-row and grid-end-column not inheritable.

21. Change name of "Insignificant Entity Reference" for non-ESIS
    information

22. Review what is specified when the destination of a cross reference
    is split across page boundaries.

23. Modify scale-to-fit characteristic, adding additional parameters,
    including a means to specify cropping.

24. Make syntax of numerical constants simpler

25. Review footnote numbering to ensure all required function is
    provided, i.e., by page, chap, doc, etc.

26. Add sorting function.

27. Add ability to specify appropriate behavior for handling words that
    change spelling at line breaks (e.g., words containing German ß).

28. Add mitre limit to rules.

29. Add additional characteristics to conditionalize pre- and post-space
    at page and column breaks.

30. Add additional characteristic to the leader flow object class to
    control the alignment of leaders.

31. Clarify support for math accents.

32. Provide some type of inline keep.

33. Point to appropriate document to define a set of public identifiers
    for the commonly used notations for the external graphic flow
    object.

34. Support boxes with rounded corners in both tables and box flow
    objects.

35. Provide support to specify a box around a displayed flow object.

36. Attach the language and country characteristics to characters as
    well as paragraph and embedded text flow objects.

37. Allow specification of space above and below floats and floats as
    display-space objects.

38. Initial values for inherited characteristics and default values for
    non-inherited characteristics must be clearly specified and possibly
    controllable by the specification.

39. Provide support (for use by DSSSL-Lite application) for simple page
    layout without having to support page models in their full
    generality.

40. There should be a procedure with zero arguments that returns an
    empty flow object sequence.

41. There should be a flow object for doing simple alignments with three
    parts: one left-aligned, one centered, and one right-aligned.

42. The order in which arguments are specified should not be
    significant. Expressions specifying reference values and expressions
    specifying characteristics should be processed in the characteristic
    set with respect to which flow object constructor expression is
    evaluated. Multiple specifications for the same characteristic
    should be allowed; the first should take precedence.

43. A label: argument should be allowed in the
    \<flow-object-sequence-expression\>. This would have the effect of
    labeling any of the flow objects that are unlabelled.

44. There should be a flow object class for subscripts and a flow object
    class for superscripts. These are currently allowed only within one
    of the math flow objects (including math-sequence).

45. The \<expression\> in a \<variable-definition\> should not be
    evaluated until it is needed. This allows a set of definitions that
    override another set of definitions to make use of definitions that
    occur in that other set.

46. One or more character repertoires should be defined with
    corresponding public identifiers. There should be one based on ISO
    8859-1 and one based on ISO/IEC 10646.

47. Add support for generic font family names.

48. Add support for named colors.

49. Make it clear that the Script identifiers are for identification
    purposes only.

50. Add ISO/IEC 10744 to the normative references section. (Note: get
    list from Harvey for all of the other normative references that were
    missed.)

51. Add line breaking method characteristic to the paragraph flow object
    class.

52. Add a sentence stating that the information-set can be omitted when
    a user-defined property is not used in a transformation language
    specification.

53. The codes and the character names from ISO/IEC 10646-1 and ISO/IEC
    6429 should be presented in the format in which they appear in these
    standards.

54. Clarify that when a group is transformed, DSSSL should specify where
    the start-points of any created arrows are.

55. The SGML linearizer should not require the tree to contain AT nodes
    for attributes with default values.

56. Provide a more convenient, higher-level set of string processing
    functions.

57. Allow label: argument to be used with sequence expressions.

58. The format-generated-object procedure should be an optional feature.
    There should be a number of less general procedures that provide
    subsets of its functionality.

59. Provide a more generalized solution for being able to specify values
    of characteristics in terms of the values that characteristics have
    at the point at which the characteristic is specified. Note: the em
    procedure is a possible solution.

60. Break-before/break-after/space-before/space-after characteristics
    would be better treated as arguments to flow object constructor
    expressions that insert flow objects before and after the
    constructed flow objects. This would permit these arguments to be
    used with sequence expressions.

61. The column-set model should make it easier to allow for the setting
    of mathematical formulae within multi-column text. The current model
    does not allow for formulae that span multiple columns.

62. Add a mechanism to control the size of brackets used on formulae
    that split. Users need to control whether the fence on the split
    part of the formula should match the size of the matching fence or
    only the size of the segment of the formula it is aligned with.

63. Add a mechanism to allow angled bars and a solidus to be used as
    fraction bars. It may be necessary to allow for fences for which
    only the mid-part is displayed.

64. Add a mechanism to specify which column should contain the sidenotes
    to spanned text (in two tied column subsets).

65. Support implicit bidirectionality based on character properties that
    already identify the writing direction of the characters.

66. Consider making some aspects of the language case insensitive.

67. To support user overrides, the expression in a variable definition
    should be evaluated lazily.

68. Provide a syntax for the query-construct-specification for those
    applications not using the full query language.

69. Provide support for identification of soft hyphens.

70. Provide optional support to specify the glyph-id property of a
    character when the ISO/IEC 10646 character code has been specified.
    It should also be possible to use the ISO/IEC 10646 character code
    to specify the nominal glyph id associated with that character code.

71. Provide set of high-level functions that may be used when optional
    query facilities are not being used.

72. Provide a flow object that supports simple alignment.

73. Provide a means to specify initial values for inherited
    characteristics and default values for non-inherited
    characteristics.

74. Subset the expression language to have an optional set of functions
    for an "entry" level DSSSL application.

75. Change the second to the last paragraph in the Introduction to read
    "The DSSSL specification language is declarative. It is not intended
    to be a complete programming language; however, it is Turing
    complete."

## Attempt to Refine Prior to Publication of IS (2)

### Level of Effort --- Large (L)

1.  The group (regular expression) transformation facility is very
    powerful but extremely difficult to implement. Breaking apart
    regular expression capability to deal with words is a higher
    priority, but that work should be continued to isolate other
    required functionality.

### Level of Effort --- Medium (M)

1.  Support drop caps

2.  Support run-arounds

3.  Provide procedures to access information in font resources.

4.  Provide a way for formatting a paragraph with an indication to have
    a portion of the last line quad right or on the next line if it does
    not fit.

5.  Support multiple input documents in the STFP.

6.  Determine if math matrices may be unified with tables.

7.  Provide process-node-set to do TOCs and map constructor

### Level of Effort --- Small (S)

1.  Provide deletion indications

2.  Provide means to specify width characteristic on change marks

3.  Rewrite subset procedure in STTP

4.  In the tree builder, delete effective status of TMP.

5.  Provide ability to have named characters in symbols

6.  Provide support for automatic numbering of Tables and Figures in the
    Figure (or Table) x of y form.

Provide a means to specify desired figure and table break points when
these objects have to be split across page and column boundaries.