Re: [css3-gcpm] Comments on Generated Content for Paged Media 2007-05-04

Also sprach Ladd Van Tol:

 > > I agree that your text is better. For horizontal text, that is.
 > > Leaders can also be vertical and the GCPM text was carefully written
 > > to avoid "horizontal" or "vertical".
 > 
 > Aha, I hadn't thought of vertical text. It makes it a little more  
 > obscure, but taking out the word "horizontally" would work, and I  
 > think is better than the original language:
 > 
 > "User Agents should attempt to align corresponding glyphs from the  
 > leader pattern between consecutive lines"

I agree. Changed. (The change will not be publically visible until the
next update, though)

 > >> 9.1 Hyphenate properties
 > >>
 > >> Should specify allowed format(s) for hyphenation dictionaries -- is
 > >> this TeX-style dictionaries? Making this UA-dependent would be bad.
 > >
 > > Ideally, there would be one common format. In this case, I don't think
 > > it's realistic to achieve and -- more importantly -- it's not that
 > > important as hyphenation is a luxury. You can, however, specify a list
 > > of different resources in different formats.
 > 
 > Since TeX dictionaries have no header, I'm concerned that UAs might  
 > not be able to infer the hyphenation resource format in all cases. I  
 > notice that Prince uses TeX-style dictionaries, but does not allow  
 > for an exception table.

I believe exceptions can be encoded into the TeX format. Can someone
help me out here?

 > > Did you actually understand section 23? If so, you're among the chosen
 > > few. Is it useful?
 > 
 > I get the gist of it, and it seems that the prototype container  
 > mechanism could be very powerful.
 > 
 > The spec definitely needs to be more explicit about each property.  
 > For example, in the TOC example, is it necessary to specify  
 > "prototype-insert-position: current"? It seems like current should be  
 > the default, and the make-element property should cause the insertion  
 > of the content.

Agreed. Setting 'prototype-insert-position: current' is therefore not
necessary. I'll add property definitions. 

 > One question I had was about the treatment of elements within the  
 > prototype container that are not prototype entry elements. Are they  
 > copied for each list item?

No. For example, in this example, the h2 element is only showed once.

  ...
  <style>
  #index {
    prototype: container }
  #index-marker {
    prototype-insert-position: sorted 
    prototype-insert-policy: unique; 
    text-transform: uppercase }
  #index-entry {
    prototype-insert-position: sorted }
  #index-entry::after {
    content: leader(". . ") source-counter(page) }
  dfn.entry { 
    prototype-insert: index-marker first-letter, index-entry content }
  </style>
  ...
  
  <div id="index">
  <h2>Index</h2>
  <div id="index-marker"></div>
  <div id="index-entry"></div>
  </div>
  ...

BTW, I have changed the name of the 'make-element' to 'prototype-insert'.

(I'm looking for a better name for the 'prototype' property as well --
now it looks like a shorthand propertye. Calling it
'prototype-container' would make sense, but I want to avoid yes/no
values. Hmm.)

 > A few other comments:
 > 
 > 	- The Glossary example should show the appropriate make-element syntax.

Right. How about this example:

  ...
  <style>
  #glossary { prototype: container }
  #glossary-term { prototype-insert-position: sorted }
  #glossary-definition { prototype-insert-position: current }
  dfn { prototype-insert: glossary-term self, glossary-definition attr(title) }
  
  </style>
  ...
  <div id="glossary">
  <h2>Glossary of terms</h2>
  <dl>
    <dt id="glossary-term">...</dt>
    <dd id="glossary-definition">...</dd>
  </dl>
  </div>
  ...
  
  <p>The <dfn title="Leading paragraph">introduction</dfn> comes first.</p>


 > 	- The Index example should, I think, quote the leader pattern

Yes. Nice catch.

 > 	- The Index example should show the prototype container

Right. My proposed example is copied above.

 > 	- Is the content specification in make-element the same as the  
 > target-text value from Cross-references?

Yes: 

  self (renamed from 'content')
  before
  after
  first-letter

Thanks for your (continued) review -- it's inspiring to have someone
look into this.

-h&kon
              Håkon Wium Lie                          CTO °þe®ª
howcome@opera.com                  http://people.opera.com/howcome

Received on Tuesday, 8 May 2007 14:55:38 UTC