- From: Peter B. West <lists@pbw.id.au>
- Date: Wed, 16 Mar 2005 10:55:13 +1000
- To: liam@w3.org
- CC: xsl-editors <xsl-editors@w3.org>
Liam Quin wrote: > Peter, thank you for your comments. The Working Group considered > your message at its recent Face to Face meeting. > > There seem to us to be three separate questions: > (1) Editorial changes > > Noted with thanks! > > (2) Re: Might it be possible to provide for direct inheritance of > traits? > > Traits do not inherit. > > (3) Re: What if a subset of traits were defined to inherit directly from > properties on their area's controlling simple-page-master? > > You can't inherit from both places. The Working Group has tried this > approach in the past, and it is an area we might need to explore in > order to do layout-driven formatting, but it is not a change we are > prepared to make for 1.1. > > Thank you, > > Liam, on behalf of the XSL Working Group FO subgroup. > Liam, Thanks to you and the WG for your response. Regarding (3), allow me try a different tack. Below are the changes to the description of page-sequence from XSL 1.0 to the 1.1 Draft, except for a discussion of binding edge and change bars. The interesting part is at the end of the 1.1 changes. ----------------- 1.1 changes ----------------------- XSL 1.1 Draft 6.4.5 fo:page-sequence Common Usage: ... Areas: ... | The generation of these further areas is described in the descriptions | of the fo:simple-page-master, region-masters and fo:flow-map. ... The page-viewport-areas identify one of the sides as a page binding edge. ... (Discussion of binding edge.) For each formatting object descendant D under the change bar influence of a given fo:change-bar-begin ... (Discussion of change bars.) ** Trait Derivation: ** The reference-orientation and writing-mode of the ** region-viewport-areas are determined by the values of the ** "reference-orientation" and "writing-mode" properties of the ** fo:page-sequence. ** Note: ** The value may be given as an explicit value or the ** from-page-master-region function may be used to obtain the ** value specified on the layout formatting object being used ** to generate the region viewport/reference area pair. ---------------- end 1.1 changes --------------------- What appears to have happened here is that a specific interpretation of the way reference-orientation and writing-mode are derived is being cemented in place, and then the new function is introduced to support aspects of the other interpretation. It seems to me that 1.0 allowed the following interpretation. The fo:simple-page-master subtree generates a set of page context areas, conceptually when the layout-master set is being processed; page-viewport, page-reference-area, region-(border)-viewport, region-(border)-reference-area, region-body-viewport, region-body-reference-area, (empty) before-float-reference-area, (empty) footnote-reference-area, main-reference-area and span-reference-area. This set of top-level page areas is common to all pages generated using a given simple-page-master. Extent properties defined in terms of percentages can be resolved during the construction of the layout-master-set against the actual page size required by the s-p-master. This area subtree can then be copied directly into the area tree when the s-p-m is invoked by a page-sequence. The trait set developed in this way includes both the reference-orientation and the writing-mode. page-sequence then has no involvement in setting either of these properties. The curious thing about the reworking of the draft is that reference-orientation and writing-mode are active on s-p-m, but are removed from the regions! What's the rationale for that? If the s-p-m can control these properties when pages are being laid out, why can't the regions do the same? Instead of being able to directly specify ref-orient or w-m individually on each region and differently from the s-p-m, the default is to impose a single value on all of the regions, and introduce from-page-master-region() to recover flexibility. This is topsy-turvy. Note that the normal proces of property inheritance is intact. Given the acceptance by the WG of the suggestion that reference-orientation is not inherited, but is additively applied with respect to the nearest ancestor reference-area, reference-orientation, similarly to percentage calculations, is resolved with reference to the area tree, not the FO tree. While not identical, writing-mode has similarities. It is not "inherited", but sets up a state in the area tree at the reference-area on which it is defined. It seems to me feasible to go the other way as described above. Style-sheet authors also write the pages masters and associate them with page-sequences. If an author has reason to override the reference-orientation or writing-mode on any region, the flow or static-content can be created with a single fo:block-container child on which the required properties are defined. The major advantage is that all of the page layout associated with layout-master-set can be performed while processing that subtree. Regards, Peter -- Peter B. West <http://cv.pbw.id.au/> Folio <http://defoe.sourceforge.net/folio/> <http://folio.bkbits.net/>
Received on Wednesday, 16 March 2005 00:55:19 UTC