The Flow Object Tree as a diagnostic tool (Was: Has any one...???)

Subject: The Flow Object Tree as a diagnostic tool (Was: Has any one...???)
From: "G. Ken Holman" <gkholman@xxxxxxxxxxxxxx>
Date: Tue, 14 Oct 1997 14:06:28 -0400
At 12:26 97/10/14 -0500, Vu Nguyen wrote:
>  But, on DSSSL Standard specs, the paragraph flow object has those
>characteristics... for line-numbers and stuffs... so wouldn't the RTF
>backend just be modified to suported this???

While James has worked very hard to produce a super system, he is cracking
the tough nuts first ... I suspect this isn't considered a difficult
problem and it is left to those volunteers who have the time to contribute
to the effort by modifying JADE and sending candidate code his way for
incorporation.

I don't mean to put words in James' mouth, but if anyone can contribute by
helping him out this way, I'm quite sure he would appreciate it.  He has
invited people to contribute on his "jade.htm" page.

I deduced that JADE was incomplete in this area by the following steps.

I created a test script to illustrate line-numbers since I hadn't had a
need to use the feature before and your posting made me curious.

When I, too, could not get line numbers to work I examined the flow object
tree created by JADE to see if there was anything to learn (James told me
of this technique a number of months ago when I embarrassed myself by
claiming something that wasn't actually true and was obviously not true had
I taken the time to examine the flow object tree; my problems were entirely
in my DSSSL programming).

Looking at the flow object tree for the example I created for you, I saw
that while the information for the line-number-side: and line-number-sep:
characteristics was present, the information for the line-number:
characteristic was not present.  My quick posting was based on seeing the
first couple of characteristics ... it was only later when I realized the
third characteristic wasn't there.

This led me to the conclusion that it is JADE that needs to be completed in
this area and not the RTF backend (though it, too, may not be complete).

Then again, I may have not specified line numbers correctly, but this is
how I read the standard today.

I highly recommend this technique as a diagnostic tool when a DSSSL program
doesn't work as it shows you what you asked JADE to produce in the flow
object tree (not what you may have thought you asked to be produced!).

.............. Ken


F:\FTEMP>type test.dsl
<!DOCTYPE style-sheet PUBLIC "-//James Clark//DTD DSSSL Style Sheet//EN">

(define debug
  (external-procedure "UNREGISTERED::James Clark//Procedure::debug"))

(element doc
    (process-children))

(element para
    (make paragraph
        space-before: 10pt
        (process-children)))

(element monospc
    (make paragraph
        font-family-name:   "Courier New"
        lines:              'asis
        line-number:        (make sequence
                                font-posture: 'italic)
        line-number-side:   'start
        line-number-sep:    .25in
        (process-children)))

; end of file


F:\FTEMP>type test.sgm
<!DOCTYPE doc [
<!ELEMENT doc - O ( para | monospc )+>
<!ELEMENT para - O ( #PCDATA )>
<!ELEMENT monospc - - RCDATA>
]>
<doc>
<para>First para
<monospc>A line
Another line
Third line
Fourth line
</monospc>
<para>Second para

F:\FTEMP>jade -c l:\jade\current\catalog -t fot -d test.dsl test.sgm

F:\FTEMP>type test.fot
<!doctype fot public "-//James Clark//DTD DSSSL Flow Object Tree//EN">
<element index=0 rule-element>
<element index=1 rule-element>
<paragraph space-before.min=10000 space-before.nominal=10000
space-before.max=10000>
<chars>
First para
</chars>
</paragraph>
</element>
<element index=2 rule-element>
<paragraph font-family-name="Courier New" lines=asis line-number-side=start
line-number-sep=18000>
<chars>
A line

</chars>
<chars>
Another line

</chars>
<chars>
Third line

</chars>
<chars>
Fourth line
</chars>
</paragraph>
</element>
<element index=3 rule-element>
<paragraph space-before.min=10000 space-before.nominal=10000
space-before.max=10000>
<chars>
Second para
</chars>
</paragraph>
</element>
</element>

F:\FTEMP>
F:\FTEMP>



--
G. Ken Holman            mailto:gkholman@xxxxxxxxxxxxxx
Crane Softwrights Ltd.  http://www.CraneSoftwrights.com
1605 Mardick Court, Box 266,         V: +1(613)489-0999
Kars, Ontario CANADA K0A-2E0         F: +1(613)489-0995
PGP Privacy: http://www.cyberus.ca/~holman/gkholman.pgp
Training:  http://www.CraneSoftwrights.com/schedule.htm

 DSSSList info and archive:  http://www.mulberrytech.com/dsssl/dssslist


Current Thread