bug in jade??

Subject: bug in jade??
From: Taranov Alexander <tay@xxxxxxxxxx>
Date: Tue, 24 Jun 97 16:48 MSD
It seems to me that
jade do not always use most specific formatting rule.

in DocBook you may have such fragment:

      <itemizedlist mark="bullet">
	<listitem><para>Item 1</para>
	</listitem>
	<listitem><para>Item 2</para>
	</listitem>
	<listitem><para>Item 3</para>
	</listitem>
      </itemizedlist>


with modular docbook.dsl by Norman Walsh style-sheet 
fragment of which (with inserted DEBUG calls) is included below.

debug printout shows clearly that for <para> inside
<listitem> the common para formatting rule is called

jade:/users/tay/INST/dsssl/docbook/dblists.dsl:28:43:I: debug "10pt"
jade:/users/tay/INST/dsssl/docbook/dbcommon.dsl:214:10:I: debug ""common para rule""
jade:/users/tay/INST/dsssl/docbook/dblists.dsl:28:43:I: debug "10pt"
jade:/users/tay/INST/dsssl/docbook/dbcommon.dsl:214:10:I: debug ""common para rule""
jade:/users/tay/INST/dsssl/docbook/dblists.dsl:28:43:I: debug "10pt"
jade:/users/tay/INST/dsssl/docbook/dbcommon.dsl:214:10:I: debug ""common para rule""
jade:/users/tay/INST/dsssl/docbook/dblists.dsl:28:43:I: debug "10pt"

debug 10pt is inserted in rule for (ITEMIZEDLIST LISTITEM),
debug "common... " in common PARA rule.



=============================
(element ITEMIZEDLIST ($list$))

(element (ITEMIZEDLIST LISTITEM)
  (make paragraph
	start-indent: (+ (inherited-start-indent) (debug (ILSTEP)))
	(process-children)))

(element (ITEMIZEDLIST LISTITEM PARA)
  (let ((spacing (inherited-attribute-string "spacing")))
    (if (= (debug (child-number))  1)
      (let ((ilevel 
	      (length (hierarchical-number-recursive "ITEMIZEDLIST")))
	    (override
	      (inherited-attribute-string "override"))
	    (spacing
	      (inherited-attribute-string "spacing"))
	    (mark
	      (inherited-attribute-string "mark")))
	(make paragraph
	      use: para-style
	      space-before: (if (equal? "COMPACT" spacing)
				0pt
			      %para-sep%)
	      first-line-start-indent: (- (ILSTEP))
	      (make line-field
		    font-family-name:
		      (BULLTREAT BULLFONT ilevel override mark)
		    font-size:
		      (BULLTREAT BULLSIZE ilevel override mark)
		    position-point-shift:
		      (BULLTREAT BULLSHIFT ilevel override mark)
		    field-width: (ILSTEP)
		    (literal
		      (BULLTREAT BULLSTR ilevel override mark)))
	      (make sequence
		    first-line-start-indent: 0pt
		    (process-children-trim))))
    (make paragraph
	  use: para-style
	  space-before: (if (equal? "COMPACT" spacing)
			    0pt
			  %para-sep%)
	  (process-children-trim)))))

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


Current Thread