W3C home > Mailing lists > Public > www-style@w3.org > May 1997

Re: content property

From: Paul Prescod <papresco@calum.csclub.uwaterloo.ca>
Date: Tue, 06 May 1997 21:36:54 -0400
Message-ID: <336FDCB6.AE082935@calum.csclub.uwaterloo.ca>
To: www-style@w3.org
David Perrell wrote:
> Displayed as:
> ----------------------
> Section 1: Headings
> 
> Subsection 1a: Subheadings
> 
> Subsection 1b: Using the div counter
> 
> Section 2: Using the body counter
> 
> Subsection 2a: Subheadings
> 
> Subsection 2b: Using the div counter
> ----------------------

Now how do you count figures? How do you count equations? How do you
count paragraphs that have headings in-between them?

Interestingly, DSSSL does all of these without counters or declarations.
I wouldn't say that the DSSSL way is easier than named counters, but I
don't think it is harder either. It has the feature that it minimizes
linear dependencies which can accelerate WYSIWYG display. It is also
more scalable.

In DSSSL you do an ordered list like this:

(element (OL LI) 
    (make display-group
        (literal (number->string (child-number)) ". ") 
	(process-children)))

The data conversion from number->string->flow object (display object) is
some extra typing and understanding, but it allows you to do things like
this:

(element P
    (if (modulo (child-number) 5)
	 (make sequence 
	     (literal (number->string (child-number)))
	     (process-children))
	 (process-children)))
	
Which outputs a line number for every fifth line. In a real style sheet
you would want to do something with tabbing to make the lines align, of
course. But anyhow, the extra type conversions have nothing to do with
the "DSSSL Way" of doing these things which I will describe more fully
in another message.

 Paul Prescod
Received on Tuesday, 6 May 1997 22:37:06 GMT

This archive was generated by hypermail 2.2.0+W3C-0.50 : Monday, 27 April 2009 13:53:50 GMT