You are viewing a plain text version of this content. The canonical link for it is here.
Posted to general-cvs@xml.apache.org by pb...@apache.org on 2002/04/28 16:44:11 UTC
cvs commit: xml-site/targets/fop/design/alt.design alt.properties.html compound-properties.html footnotes.html galleys.html keeps.html spaces.html traits.html AbsolutePosition.html BorderCommonStyle.html PropNames.html Properties.html PropertyConsts.html VerticalAlign.html classes-overview.html index.html properties-classes.html property-parsing.html xml-parsing.html
pbwest 02/04/28 07:44:11
Modified: targets/fop/design/alt.design AbsolutePosition.html
BorderCommonStyle.html PropNames.html
Properties.html PropertyConsts.html
VerticalAlign.html classes-overview.html index.html
properties-classes.html property-parsing.html
xml-parsing.html
Added: targets/fop/design/alt.design alt.properties.html
compound-properties.html footnotes.html
galleys.html keeps.html spaces.html traits.html
Log:
Updating ALT DESIGN
Revision Changes Path
1.2 +10 -1 xml-site/targets/fop/design/alt.design/AbsolutePosition.html
Index: AbsolutePosition.html
===================================================================
RCS file: /home/cvs/xml-site/targets/fop/design/alt.design/AbsolutePosition.html,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -r1.1 -r1.2
--- AbsolutePosition.html 18 Mar 2002 08:50:02 -0000 1.1
+++ AbsolutePosition.html 28 Apr 2002 14:44:10 -0000 1.2
@@ -3,7 +3,13 @@
<IMG border="0" height="6" hspace="0" src="resources/separator.gif" vspace="0" width="120"><BR>
<A href="../index.html" onMouseOut="rolloverOff('side-ext-6');" onMouseOver="rolloverOn('side-ext-6');"><IMG alt="NEW DESIGN" border="0" height="12" hspace="0" name="side-ext-6" onLoad="rolloverLoad('side-ext-6','graphics/ext-6-label-2.jpg','graphics/ext-6-label-3.jpg');" src="graphics/ext-6-label-3.jpg" vspace="0" width="120"></A><BR>
<IMG border="0" height="6" hspace="0" src="resources/separator.gif" vspace="0" width="120"><BR>
- <A href="index.html" onMouseOut="rolloverOff('side-index');" onMouseOver="rolloverOn('side-index');"><IMG alt="alt.properties" border="0" height="12" hspace="0" name="side-index" onLoad="rolloverLoad('side-index','graphics/index-label-2.jpg','graphics/index-label-3.jpg');" src="graphics/index-label-3.jpg" vspace="0" width="120"></A><BR>
+ <A href="index.html" onMouseOut="rolloverOff('side-index');" onMouseOver="rolloverOn('side-index');"><IMG alt="co-routines" border="0" height="12" hspace="0" name="side-index" onLoad="rolloverLoad('side-index','graphics/index-label-2.jpg','graphics/index-label-3.jpg');" src="graphics/index-label-3.jpg" vspace="0" width="120"></A><BR>
+ <A href="galleys.html" onMouseOut="rolloverOff('side-galleys');" onMouseOver="rolloverOn('side-galleys');"><IMG alt="galleys" border="0" height="12" hspace="0" name="side-galleys" onLoad="rolloverLoad('side-galleys','graphics/galleys-label-2.jpg','graphics/galleys-label-3.jpg');" src="graphics/galleys-label-3.jpg" vspace="0" width="120"></A><BR>
+ <A href="footnotes.html" onMouseOut="rolloverOff('side-footnotes');" onMouseOver="rolloverOn('side-footnotes');"><IMG alt="footnotes" border="0" height="12" hspace="0" name="side-footnotes" onLoad="rolloverLoad('side-footnotes','graphics/footnotes-label-2.jpg','graphics/footnotes-label-3.jpg');" src="graphics/footnotes-label-3.jpg" vspace="0" width="120"></A><BR>
+ <A href="keeps.html" onMouseOut="rolloverOff('side-keeps');" onMouseOver="rolloverOn('side-keeps');"><IMG alt="keeps" border="0" height="12" hspace="0" name="side-keeps" onLoad="rolloverLoad('side-keeps','graphics/keeps-label-2.jpg','graphics/keeps-label-3.jpg');" src="graphics/keeps-label-3.jpg" vspace="0" width="120"></A><BR>
+ <A href="spaces.html" onMouseOut="rolloverOff('side-spaces');" onMouseOver="rolloverOn('side-spaces');"><IMG alt="space-specifiers" border="0" height="12" hspace="0" name="side-spaces" onLoad="rolloverLoad('side-spaces','graphics/spaces-label-2.jpg','graphics/spaces-label-3.jpg');" src="graphics/spaces-label-3.jpg" vspace="0" width="120"></A><BR>
+ <IMG border="0" height="6" hspace="0" src="resources/separator.gif" vspace="0" width="120"><BR>
+ <A href="alt.properties.html" onMouseOut="rolloverOff('side-alt.properties');" onMouseOver="rolloverOn('side-alt.properties');"><IMG alt="alt.properties" border="0" height="12" hspace="0" name="side-alt.properties" onLoad="rolloverLoad('side-alt.properties','graphics/alt.properties-label-2.jpg','graphics/alt.properties-label-3.jpg');" src="graphics/alt.properties-label-3.jpg" vspace="0" width="120"></A><BR>
<A href="classes-overview.html" onMouseOut="rolloverOff('side-classes-overview');" onMouseOver="rolloverOn('side-classes-overview');"><IMG alt="Classes overview" border="0" height="12" hspace="0" name="side-classes-overview" onLoad="rolloverLoad('side-classes-overview','graphics/classes-overview-label-2.jpg','graphics/classes-overview-label-3.jpg');" src="graphics/classes-overview-label-3.jpg" vspace="0" width="120"></A><BR>
<A href="properties-classes.html" onMouseOut="rolloverOff('side-properties-classes');" onMouseOver="rolloverOn('side-properties-classes');"><IMG alt="Properties classes" border="0" height="12" hspace="0" name="side-properties-classes" onLoad="rolloverLoad('side-properties-classes','graphics/properties-classes-label-2.jpg','graphics/properties-classes-label-3.jpg');" src="graphics/properties-classes-label-3.jpg" vspace="0" width="120"></A><BR>
<A href="Properties.html" onMouseOut="rolloverOff('side-Properties');" onMouseOver="rolloverOn('side-Properties');"><IMG alt="Properties" border="0" height="12" hspace="0" name="side-Properties" onLoad="rolloverLoad('side-Properties','graphics/Properties-label-2.jpg','graphics/Properties-label-3.jpg');" src="graphics/Properties-label-3.jpg" vspace="0" width="120"></A><BR>
@@ -16,6 +22,9 @@
<A href="xml-parsing.html" onMouseOut="rolloverOff('side-xml-parsing');" onMouseOver="rolloverOn('side-xml-parsing');"><IMG alt="XML parsing" border="0" height="12" hspace="0" name="side-xml-parsing" onLoad="rolloverLoad('side-xml-parsing','graphics/xml-parsing-label-2.jpg','graphics/xml-parsing-label-3.jpg');" src="graphics/xml-parsing-label-3.jpg" vspace="0" width="120"></A><BR>
<IMG border="0" height="6" hspace="0" src="resources/separator.gif" vspace="0" width="120"><BR>
<A href="property-parsing.html" onMouseOut="rolloverOff('side-property-parsing');" onMouseOver="rolloverOn('side-property-parsing');"><IMG alt="Property parsing" border="0" height="12" hspace="0" name="side-property-parsing" onLoad="rolloverLoad('side-property-parsing','graphics/property-parsing-label-2.jpg','graphics/property-parsing-label-3.jpg');" src="graphics/property-parsing-label-3.jpg" vspace="0" width="120"></A><BR>
+ <IMG border="0" height="6" hspace="0" src="resources/separator.gif" vspace="0" width="120"><BR>
+ <A href="compound-properties.html" onMouseOut="rolloverOff('side-compound-properties');" onMouseOver="rolloverOn('side-compound-properties');"><IMG alt="Compound properties" border="0" height="12" hspace="0" name="side-compound-properties" onLoad="rolloverLoad('side-compound-properties','graphics/compound-properties-label-2.jpg','graphics/compound-properties-label-3.jpg');" src="graphics/compound-properties-label-3.jpg" vspace="0" width="120"></A><BR>
+ <A href="traits.html" onMouseOut="rolloverOff('side-traits');" onMouseOver="rolloverOn('side-traits');"><IMG alt="Traits" border="0" height="12" hspace="0" name="side-traits" onLoad="rolloverLoad('side-traits','graphics/traits-label-2.jpg','graphics/traits-label-3.jpg');" src="graphics/traits-label-3.jpg" vspace="0" width="120"></A><BR>
<IMG border="0" height="14" hspace="0" src="resources/close.gif" vspace="0" width="120"><BR></TD><TD align="left" valign="top" width="*"><TABLE border="0" cellpadding="3" cellspacing="0"><TR><TD><BR>
1.2 +10 -1 xml-site/targets/fop/design/alt.design/BorderCommonStyle.html
Index: BorderCommonStyle.html
===================================================================
RCS file: /home/cvs/xml-site/targets/fop/design/alt.design/BorderCommonStyle.html,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -r1.1 -r1.2
--- BorderCommonStyle.html 18 Mar 2002 08:50:02 -0000 1.1
+++ BorderCommonStyle.html 28 Apr 2002 14:44:10 -0000 1.2
@@ -3,7 +3,13 @@
<IMG border="0" height="6" hspace="0" src="resources/separator.gif" vspace="0" width="120"><BR>
<A href="../index.html" onMouseOut="rolloverOff('side-ext-6');" onMouseOver="rolloverOn('side-ext-6');"><IMG alt="NEW DESIGN" border="0" height="12" hspace="0" name="side-ext-6" onLoad="rolloverLoad('side-ext-6','graphics/ext-6-label-2.jpg','graphics/ext-6-label-3.jpg');" src="graphics/ext-6-label-3.jpg" vspace="0" width="120"></A><BR>
<IMG border="0" height="6" hspace="0" src="resources/separator.gif" vspace="0" width="120"><BR>
- <A href="index.html" onMouseOut="rolloverOff('side-index');" onMouseOver="rolloverOn('side-index');"><IMG alt="alt.properties" border="0" height="12" hspace="0" name="side-index" onLoad="rolloverLoad('side-index','graphics/index-label-2.jpg','graphics/index-label-3.jpg');" src="graphics/index-label-3.jpg" vspace="0" width="120"></A><BR>
+ <A href="index.html" onMouseOut="rolloverOff('side-index');" onMouseOver="rolloverOn('side-index');"><IMG alt="co-routines" border="0" height="12" hspace="0" name="side-index" onLoad="rolloverLoad('side-index','graphics/index-label-2.jpg','graphics/index-label-3.jpg');" src="graphics/index-label-3.jpg" vspace="0" width="120"></A><BR>
+ <A href="galleys.html" onMouseOut="rolloverOff('side-galleys');" onMouseOver="rolloverOn('side-galleys');"><IMG alt="galleys" border="0" height="12" hspace="0" name="side-galleys" onLoad="rolloverLoad('side-galleys','graphics/galleys-label-2.jpg','graphics/galleys-label-3.jpg');" src="graphics/galleys-label-3.jpg" vspace="0" width="120"></A><BR>
+ <A href="footnotes.html" onMouseOut="rolloverOff('side-footnotes');" onMouseOver="rolloverOn('side-footnotes');"><IMG alt="footnotes" border="0" height="12" hspace="0" name="side-footnotes" onLoad="rolloverLoad('side-footnotes','graphics/footnotes-label-2.jpg','graphics/footnotes-label-3.jpg');" src="graphics/footnotes-label-3.jpg" vspace="0" width="120"></A><BR>
+ <A href="keeps.html" onMouseOut="rolloverOff('side-keeps');" onMouseOver="rolloverOn('side-keeps');"><IMG alt="keeps" border="0" height="12" hspace="0" name="side-keeps" onLoad="rolloverLoad('side-keeps','graphics/keeps-label-2.jpg','graphics/keeps-label-3.jpg');" src="graphics/keeps-label-3.jpg" vspace="0" width="120"></A><BR>
+ <A href="spaces.html" onMouseOut="rolloverOff('side-spaces');" onMouseOver="rolloverOn('side-spaces');"><IMG alt="space-specifiers" border="0" height="12" hspace="0" name="side-spaces" onLoad="rolloverLoad('side-spaces','graphics/spaces-label-2.jpg','graphics/spaces-label-3.jpg');" src="graphics/spaces-label-3.jpg" vspace="0" width="120"></A><BR>
+ <IMG border="0" height="6" hspace="0" src="resources/separator.gif" vspace="0" width="120"><BR>
+ <A href="alt.properties.html" onMouseOut="rolloverOff('side-alt.properties');" onMouseOver="rolloverOn('side-alt.properties');"><IMG alt="alt.properties" border="0" height="12" hspace="0" name="side-alt.properties" onLoad="rolloverLoad('side-alt.properties','graphics/alt.properties-label-2.jpg','graphics/alt.properties-label-3.jpg');" src="graphics/alt.properties-label-3.jpg" vspace="0" width="120"></A><BR>
<A href="classes-overview.html" onMouseOut="rolloverOff('side-classes-overview');" onMouseOver="rolloverOn('side-classes-overview');"><IMG alt="Classes overview" border="0" height="12" hspace="0" name="side-classes-overview" onLoad="rolloverLoad('side-classes-overview','graphics/classes-overview-label-2.jpg','graphics/classes-overview-label-3.jpg');" src="graphics/classes-overview-label-3.jpg" vspace="0" width="120"></A><BR>
<A href="properties-classes.html" onMouseOut="rolloverOff('side-properties-classes');" onMouseOver="rolloverOn('side-properties-classes');"><IMG alt="Properties classes" border="0" height="12" hspace="0" name="side-properties-classes" onLoad="rolloverLoad('side-properties-classes','graphics/properties-classes-label-2.jpg','graphics/properties-classes-label-3.jpg');" src="graphics/properties-classes-label-3.jpg" vspace="0" width="120"></A><BR>
<A href="Properties.html" onMouseOut="rolloverOff('side-Properties');" onMouseOver="rolloverOn('side-Properties');"><IMG alt="Properties" border="0" height="12" hspace="0" name="side-Properties" onLoad="rolloverLoad('side-Properties','graphics/Properties-label-2.jpg','graphics/Properties-label-3.jpg');" src="graphics/Properties-label-3.jpg" vspace="0" width="120"></A><BR>
@@ -16,6 +22,9 @@
<A href="xml-parsing.html" onMouseOut="rolloverOff('side-xml-parsing');" onMouseOver="rolloverOn('side-xml-parsing');"><IMG alt="XML parsing" border="0" height="12" hspace="0" name="side-xml-parsing" onLoad="rolloverLoad('side-xml-parsing','graphics/xml-parsing-label-2.jpg','graphics/xml-parsing-label-3.jpg');" src="graphics/xml-parsing-label-3.jpg" vspace="0" width="120"></A><BR>
<IMG border="0" height="6" hspace="0" src="resources/separator.gif" vspace="0" width="120"><BR>
<A href="property-parsing.html" onMouseOut="rolloverOff('side-property-parsing');" onMouseOver="rolloverOn('side-property-parsing');"><IMG alt="Property parsing" border="0" height="12" hspace="0" name="side-property-parsing" onLoad="rolloverLoad('side-property-parsing','graphics/property-parsing-label-2.jpg','graphics/property-parsing-label-3.jpg');" src="graphics/property-parsing-label-3.jpg" vspace="0" width="120"></A><BR>
+ <IMG border="0" height="6" hspace="0" src="resources/separator.gif" vspace="0" width="120"><BR>
+ <A href="compound-properties.html" onMouseOut="rolloverOff('side-compound-properties');" onMouseOver="rolloverOn('side-compound-properties');"><IMG alt="Compound properties" border="0" height="12" hspace="0" name="side-compound-properties" onLoad="rolloverLoad('side-compound-properties','graphics/compound-properties-label-2.jpg','graphics/compound-properties-label-3.jpg');" src="graphics/compound-properties-label-3.jpg" vspace="0" width="120"></A><BR>
+ <A href="traits.html" onMouseOut="rolloverOff('side-traits');" onMouseOver="rolloverOn('side-traits');"><IMG alt="Traits" border="0" height="12" hspace="0" name="side-traits" onLoad="rolloverLoad('side-traits','graphics/traits-label-2.jpg','graphics/traits-label-3.jpg');" src="graphics/traits-label-3.jpg" vspace="0" width="120"></A><BR>
<IMG border="0" height="14" hspace="0" src="resources/close.gif" vspace="0" width="120"><BR></TD><TD align="left" valign="top" width="*"><TABLE border="0" cellpadding="3" cellspacing="0"><TR><TD><BR>
1.2 +10 -1 xml-site/targets/fop/design/alt.design/PropNames.html
Index: PropNames.html
===================================================================
RCS file: /home/cvs/xml-site/targets/fop/design/alt.design/PropNames.html,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -r1.1 -r1.2
--- PropNames.html 18 Mar 2002 08:50:02 -0000 1.1
+++ PropNames.html 28 Apr 2002 14:44:10 -0000 1.2
@@ -3,7 +3,13 @@
<IMG border="0" height="6" hspace="0" src="resources/separator.gif" vspace="0" width="120"><BR>
<A href="../index.html" onMouseOut="rolloverOff('side-ext-6');" onMouseOver="rolloverOn('side-ext-6');"><IMG alt="NEW DESIGN" border="0" height="12" hspace="0" name="side-ext-6" onLoad="rolloverLoad('side-ext-6','graphics/ext-6-label-2.jpg','graphics/ext-6-label-3.jpg');" src="graphics/ext-6-label-3.jpg" vspace="0" width="120"></A><BR>
<IMG border="0" height="6" hspace="0" src="resources/separator.gif" vspace="0" width="120"><BR>
- <A href="index.html" onMouseOut="rolloverOff('side-index');" onMouseOver="rolloverOn('side-index');"><IMG alt="alt.properties" border="0" height="12" hspace="0" name="side-index" onLoad="rolloverLoad('side-index','graphics/index-label-2.jpg','graphics/index-label-3.jpg');" src="graphics/index-label-3.jpg" vspace="0" width="120"></A><BR>
+ <A href="index.html" onMouseOut="rolloverOff('side-index');" onMouseOver="rolloverOn('side-index');"><IMG alt="co-routines" border="0" height="12" hspace="0" name="side-index" onLoad="rolloverLoad('side-index','graphics/index-label-2.jpg','graphics/index-label-3.jpg');" src="graphics/index-label-3.jpg" vspace="0" width="120"></A><BR>
+ <A href="galleys.html" onMouseOut="rolloverOff('side-galleys');" onMouseOver="rolloverOn('side-galleys');"><IMG alt="galleys" border="0" height="12" hspace="0" name="side-galleys" onLoad="rolloverLoad('side-galleys','graphics/galleys-label-2.jpg','graphics/galleys-label-3.jpg');" src="graphics/galleys-label-3.jpg" vspace="0" width="120"></A><BR>
+ <A href="footnotes.html" onMouseOut="rolloverOff('side-footnotes');" onMouseOver="rolloverOn('side-footnotes');"><IMG alt="footnotes" border="0" height="12" hspace="0" name="side-footnotes" onLoad="rolloverLoad('side-footnotes','graphics/footnotes-label-2.jpg','graphics/footnotes-label-3.jpg');" src="graphics/footnotes-label-3.jpg" vspace="0" width="120"></A><BR>
+ <A href="keeps.html" onMouseOut="rolloverOff('side-keeps');" onMouseOver="rolloverOn('side-keeps');"><IMG alt="keeps" border="0" height="12" hspace="0" name="side-keeps" onLoad="rolloverLoad('side-keeps','graphics/keeps-label-2.jpg','graphics/keeps-label-3.jpg');" src="graphics/keeps-label-3.jpg" vspace="0" width="120"></A><BR>
+ <A href="spaces.html" onMouseOut="rolloverOff('side-spaces');" onMouseOver="rolloverOn('side-spaces');"><IMG alt="space-specifiers" border="0" height="12" hspace="0" name="side-spaces" onLoad="rolloverLoad('side-spaces','graphics/spaces-label-2.jpg','graphics/spaces-label-3.jpg');" src="graphics/spaces-label-3.jpg" vspace="0" width="120"></A><BR>
+ <IMG border="0" height="6" hspace="0" src="resources/separator.gif" vspace="0" width="120"><BR>
+ <A href="alt.properties.html" onMouseOut="rolloverOff('side-alt.properties');" onMouseOver="rolloverOn('side-alt.properties');"><IMG alt="alt.properties" border="0" height="12" hspace="0" name="side-alt.properties" onLoad="rolloverLoad('side-alt.properties','graphics/alt.properties-label-2.jpg','graphics/alt.properties-label-3.jpg');" src="graphics/alt.properties-label-3.jpg" vspace="0" width="120"></A><BR>
<A href="classes-overview.html" onMouseOut="rolloverOff('side-classes-overview');" onMouseOver="rolloverOn('side-classes-overview');"><IMG alt="Classes overview" border="0" height="12" hspace="0" name="side-classes-overview" onLoad="rolloverLoad('side-classes-overview','graphics/classes-overview-label-2.jpg','graphics/classes-overview-label-3.jpg');" src="graphics/classes-overview-label-3.jpg" vspace="0" width="120"></A><BR>
<A href="properties-classes.html" onMouseOut="rolloverOff('side-properties-classes');" onMouseOver="rolloverOn('side-properties-classes');"><IMG alt="Properties classes" border="0" height="12" hspace="0" name="side-properties-classes" onLoad="rolloverLoad('side-properties-classes','graphics/properties-classes-label-2.jpg','graphics/properties-classes-label-3.jpg');" src="graphics/properties-classes-label-3.jpg" vspace="0" width="120"></A><BR>
<A href="Properties.html" onMouseOut="rolloverOff('side-Properties');" onMouseOver="rolloverOn('side-Properties');"><IMG alt="Properties" border="0" height="12" hspace="0" name="side-Properties" onLoad="rolloverLoad('side-Properties','graphics/Properties-label-2.jpg','graphics/Properties-label-3.jpg');" src="graphics/Properties-label-3.jpg" vspace="0" width="120"></A><BR>
@@ -16,6 +22,9 @@
<A href="xml-parsing.html" onMouseOut="rolloverOff('side-xml-parsing');" onMouseOver="rolloverOn('side-xml-parsing');"><IMG alt="XML parsing" border="0" height="12" hspace="0" name="side-xml-parsing" onLoad="rolloverLoad('side-xml-parsing','graphics/xml-parsing-label-2.jpg','graphics/xml-parsing-label-3.jpg');" src="graphics/xml-parsing-label-3.jpg" vspace="0" width="120"></A><BR>
<IMG border="0" height="6" hspace="0" src="resources/separator.gif" vspace="0" width="120"><BR>
<A href="property-parsing.html" onMouseOut="rolloverOff('side-property-parsing');" onMouseOver="rolloverOn('side-property-parsing');"><IMG alt="Property parsing" border="0" height="12" hspace="0" name="side-property-parsing" onLoad="rolloverLoad('side-property-parsing','graphics/property-parsing-label-2.jpg','graphics/property-parsing-label-3.jpg');" src="graphics/property-parsing-label-3.jpg" vspace="0" width="120"></A><BR>
+ <IMG border="0" height="6" hspace="0" src="resources/separator.gif" vspace="0" width="120"><BR>
+ <A href="compound-properties.html" onMouseOut="rolloverOff('side-compound-properties');" onMouseOver="rolloverOn('side-compound-properties');"><IMG alt="Compound properties" border="0" height="12" hspace="0" name="side-compound-properties" onLoad="rolloverLoad('side-compound-properties','graphics/compound-properties-label-2.jpg','graphics/compound-properties-label-3.jpg');" src="graphics/compound-properties-label-3.jpg" vspace="0" width="120"></A><BR>
+ <A href="traits.html" onMouseOut="rolloverOff('side-traits');" onMouseOver="rolloverOn('side-traits');"><IMG alt="Traits" border="0" height="12" hspace="0" name="side-traits" onLoad="rolloverLoad('side-traits','graphics/traits-label-2.jpg','graphics/traits-label-3.jpg');" src="graphics/traits-label-3.jpg" vspace="0" width="120"></A><BR>
<IMG border="0" height="14" hspace="0" src="resources/close.gif" vspace="0" width="120"><BR></TD><TD align="left" valign="top" width="*"><TABLE border="0" cellpadding="3" cellspacing="0"><TR><TD><BR>
1.2 +10 -1 xml-site/targets/fop/design/alt.design/Properties.html
Index: Properties.html
===================================================================
RCS file: /home/cvs/xml-site/targets/fop/design/alt.design/Properties.html,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -r1.1 -r1.2
--- Properties.html 18 Mar 2002 08:50:02 -0000 1.1
+++ Properties.html 28 Apr 2002 14:44:10 -0000 1.2
@@ -3,7 +3,13 @@
<IMG border="0" height="6" hspace="0" src="resources/separator.gif" vspace="0" width="120"><BR>
<A href="../index.html" onMouseOut="rolloverOff('side-ext-6');" onMouseOver="rolloverOn('side-ext-6');"><IMG alt="NEW DESIGN" border="0" height="12" hspace="0" name="side-ext-6" onLoad="rolloverLoad('side-ext-6','graphics/ext-6-label-2.jpg','graphics/ext-6-label-3.jpg');" src="graphics/ext-6-label-3.jpg" vspace="0" width="120"></A><BR>
<IMG border="0" height="6" hspace="0" src="resources/separator.gif" vspace="0" width="120"><BR>
- <A href="index.html" onMouseOut="rolloverOff('side-index');" onMouseOver="rolloverOn('side-index');"><IMG alt="alt.properties" border="0" height="12" hspace="0" name="side-index" onLoad="rolloverLoad('side-index','graphics/index-label-2.jpg','graphics/index-label-3.jpg');" src="graphics/index-label-3.jpg" vspace="0" width="120"></A><BR>
+ <A href="index.html" onMouseOut="rolloverOff('side-index');" onMouseOver="rolloverOn('side-index');"><IMG alt="co-routines" border="0" height="12" hspace="0" name="side-index" onLoad="rolloverLoad('side-index','graphics/index-label-2.jpg','graphics/index-label-3.jpg');" src="graphics/index-label-3.jpg" vspace="0" width="120"></A><BR>
+ <A href="galleys.html" onMouseOut="rolloverOff('side-galleys');" onMouseOver="rolloverOn('side-galleys');"><IMG alt="galleys" border="0" height="12" hspace="0" name="side-galleys" onLoad="rolloverLoad('side-galleys','graphics/galleys-label-2.jpg','graphics/galleys-label-3.jpg');" src="graphics/galleys-label-3.jpg" vspace="0" width="120"></A><BR>
+ <A href="footnotes.html" onMouseOut="rolloverOff('side-footnotes');" onMouseOver="rolloverOn('side-footnotes');"><IMG alt="footnotes" border="0" height="12" hspace="0" name="side-footnotes" onLoad="rolloverLoad('side-footnotes','graphics/footnotes-label-2.jpg','graphics/footnotes-label-3.jpg');" src="graphics/footnotes-label-3.jpg" vspace="0" width="120"></A><BR>
+ <A href="keeps.html" onMouseOut="rolloverOff('side-keeps');" onMouseOver="rolloverOn('side-keeps');"><IMG alt="keeps" border="0" height="12" hspace="0" name="side-keeps" onLoad="rolloverLoad('side-keeps','graphics/keeps-label-2.jpg','graphics/keeps-label-3.jpg');" src="graphics/keeps-label-3.jpg" vspace="0" width="120"></A><BR>
+ <A href="spaces.html" onMouseOut="rolloverOff('side-spaces');" onMouseOver="rolloverOn('side-spaces');"><IMG alt="space-specifiers" border="0" height="12" hspace="0" name="side-spaces" onLoad="rolloverLoad('side-spaces','graphics/spaces-label-2.jpg','graphics/spaces-label-3.jpg');" src="graphics/spaces-label-3.jpg" vspace="0" width="120"></A><BR>
+ <IMG border="0" height="6" hspace="0" src="resources/separator.gif" vspace="0" width="120"><BR>
+ <A href="alt.properties.html" onMouseOut="rolloverOff('side-alt.properties');" onMouseOver="rolloverOn('side-alt.properties');"><IMG alt="alt.properties" border="0" height="12" hspace="0" name="side-alt.properties" onLoad="rolloverLoad('side-alt.properties','graphics/alt.properties-label-2.jpg','graphics/alt.properties-label-3.jpg');" src="graphics/alt.properties-label-3.jpg" vspace="0" width="120"></A><BR>
<A href="classes-overview.html" onMouseOut="rolloverOff('side-classes-overview');" onMouseOver="rolloverOn('side-classes-overview');"><IMG alt="Classes overview" border="0" height="12" hspace="0" name="side-classes-overview" onLoad="rolloverLoad('side-classes-overview','graphics/classes-overview-label-2.jpg','graphics/classes-overview-label-3.jpg');" src="graphics/classes-overview-label-3.jpg" vspace="0" width="120"></A><BR>
<A href="properties-classes.html" onMouseOut="rolloverOff('side-properties-classes');" onMouseOver="rolloverOn('side-properties-classes');"><IMG alt="Properties classes" border="0" height="12" hspace="0" name="side-properties-classes" onLoad="rolloverLoad('side-properties-classes','graphics/properties-classes-label-2.jpg','graphics/properties-classes-label-3.jpg');" src="graphics/properties-classes-label-3.jpg" vspace="0" width="120"></A><BR>
<IMG alt="Properties" border="0" height="12" hspace="0" src="graphics/Properties-label-1.jpg" vspace="0" width="120"><BR>
@@ -16,6 +22,9 @@
<A href="xml-parsing.html" onMouseOut="rolloverOff('side-xml-parsing');" onMouseOver="rolloverOn('side-xml-parsing');"><IMG alt="XML parsing" border="0" height="12" hspace="0" name="side-xml-parsing" onLoad="rolloverLoad('side-xml-parsing','graphics/xml-parsing-label-2.jpg','graphics/xml-parsing-label-3.jpg');" src="graphics/xml-parsing-label-3.jpg" vspace="0" width="120"></A><BR>
<IMG border="0" height="6" hspace="0" src="resources/separator.gif" vspace="0" width="120"><BR>
<A href="property-parsing.html" onMouseOut="rolloverOff('side-property-parsing');" onMouseOver="rolloverOn('side-property-parsing');"><IMG alt="Property parsing" border="0" height="12" hspace="0" name="side-property-parsing" onLoad="rolloverLoad('side-property-parsing','graphics/property-parsing-label-2.jpg','graphics/property-parsing-label-3.jpg');" src="graphics/property-parsing-label-3.jpg" vspace="0" width="120"></A><BR>
+ <IMG border="0" height="6" hspace="0" src="resources/separator.gif" vspace="0" width="120"><BR>
+ <A href="compound-properties.html" onMouseOut="rolloverOff('side-compound-properties');" onMouseOver="rolloverOn('side-compound-properties');"><IMG alt="Compound properties" border="0" height="12" hspace="0" name="side-compound-properties" onLoad="rolloverLoad('side-compound-properties','graphics/compound-properties-label-2.jpg','graphics/compound-properties-label-3.jpg');" src="graphics/compound-properties-label-3.jpg" vspace="0" width="120"></A><BR>
+ <A href="traits.html" onMouseOut="rolloverOff('side-traits');" onMouseOver="rolloverOn('side-traits');"><IMG alt="Traits" border="0" height="12" hspace="0" name="side-traits" onLoad="rolloverLoad('side-traits','graphics/traits-label-2.jpg','graphics/traits-label-3.jpg');" src="graphics/traits-label-3.jpg" vspace="0" width="120"></A><BR>
<IMG border="0" height="14" hspace="0" src="resources/close.gif" vspace="0" width="120"><BR></TD><TD align="left" valign="top" width="*"><TABLE border="0" cellpadding="3" cellspacing="0"><TR><TD><BR>
1.2 +10 -1 xml-site/targets/fop/design/alt.design/PropertyConsts.html
Index: PropertyConsts.html
===================================================================
RCS file: /home/cvs/xml-site/targets/fop/design/alt.design/PropertyConsts.html,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -r1.1 -r1.2
--- PropertyConsts.html 18 Mar 2002 08:50:02 -0000 1.1
+++ PropertyConsts.html 28 Apr 2002 14:44:10 -0000 1.2
@@ -3,7 +3,13 @@
<IMG border="0" height="6" hspace="0" src="resources/separator.gif" vspace="0" width="120"><BR>
<A href="../index.html" onMouseOut="rolloverOff('side-ext-6');" onMouseOver="rolloverOn('side-ext-6');"><IMG alt="NEW DESIGN" border="0" height="12" hspace="0" name="side-ext-6" onLoad="rolloverLoad('side-ext-6','graphics/ext-6-label-2.jpg','graphics/ext-6-label-3.jpg');" src="graphics/ext-6-label-3.jpg" vspace="0" width="120"></A><BR>
<IMG border="0" height="6" hspace="0" src="resources/separator.gif" vspace="0" width="120"><BR>
- <A href="index.html" onMouseOut="rolloverOff('side-index');" onMouseOver="rolloverOn('side-index');"><IMG alt="alt.properties" border="0" height="12" hspace="0" name="side-index" onLoad="rolloverLoad('side-index','graphics/index-label-2.jpg','graphics/index-label-3.jpg');" src="graphics/index-label-3.jpg" vspace="0" width="120"></A><BR>
+ <A href="index.html" onMouseOut="rolloverOff('side-index');" onMouseOver="rolloverOn('side-index');"><IMG alt="co-routines" border="0" height="12" hspace="0" name="side-index" onLoad="rolloverLoad('side-index','graphics/index-label-2.jpg','graphics/index-label-3.jpg');" src="graphics/index-label-3.jpg" vspace="0" width="120"></A><BR>
+ <A href="galleys.html" onMouseOut="rolloverOff('side-galleys');" onMouseOver="rolloverOn('side-galleys');"><IMG alt="galleys" border="0" height="12" hspace="0" name="side-galleys" onLoad="rolloverLoad('side-galleys','graphics/galleys-label-2.jpg','graphics/galleys-label-3.jpg');" src="graphics/galleys-label-3.jpg" vspace="0" width="120"></A><BR>
+ <A href="footnotes.html" onMouseOut="rolloverOff('side-footnotes');" onMouseOver="rolloverOn('side-footnotes');"><IMG alt="footnotes" border="0" height="12" hspace="0" name="side-footnotes" onLoad="rolloverLoad('side-footnotes','graphics/footnotes-label-2.jpg','graphics/footnotes-label-3.jpg');" src="graphics/footnotes-label-3.jpg" vspace="0" width="120"></A><BR>
+ <A href="keeps.html" onMouseOut="rolloverOff('side-keeps');" onMouseOver="rolloverOn('side-keeps');"><IMG alt="keeps" border="0" height="12" hspace="0" name="side-keeps" onLoad="rolloverLoad('side-keeps','graphics/keeps-label-2.jpg','graphics/keeps-label-3.jpg');" src="graphics/keeps-label-3.jpg" vspace="0" width="120"></A><BR>
+ <A href="spaces.html" onMouseOut="rolloverOff('side-spaces');" onMouseOver="rolloverOn('side-spaces');"><IMG alt="space-specifiers" border="0" height="12" hspace="0" name="side-spaces" onLoad="rolloverLoad('side-spaces','graphics/spaces-label-2.jpg','graphics/spaces-label-3.jpg');" src="graphics/spaces-label-3.jpg" vspace="0" width="120"></A><BR>
+ <IMG border="0" height="6" hspace="0" src="resources/separator.gif" vspace="0" width="120"><BR>
+ <A href="alt.properties.html" onMouseOut="rolloverOff('side-alt.properties');" onMouseOver="rolloverOn('side-alt.properties');"><IMG alt="alt.properties" border="0" height="12" hspace="0" name="side-alt.properties" onLoad="rolloverLoad('side-alt.properties','graphics/alt.properties-label-2.jpg','graphics/alt.properties-label-3.jpg');" src="graphics/alt.properties-label-3.jpg" vspace="0" width="120"></A><BR>
<A href="classes-overview.html" onMouseOut="rolloverOff('side-classes-overview');" onMouseOver="rolloverOn('side-classes-overview');"><IMG alt="Classes overview" border="0" height="12" hspace="0" name="side-classes-overview" onLoad="rolloverLoad('side-classes-overview','graphics/classes-overview-label-2.jpg','graphics/classes-overview-label-3.jpg');" src="graphics/classes-overview-label-3.jpg" vspace="0" width="120"></A><BR>
<A href="properties-classes.html" onMouseOut="rolloverOff('side-properties-classes');" onMouseOver="rolloverOn('side-properties-classes');"><IMG alt="Properties classes" border="0" height="12" hspace="0" name="side-properties-classes" onLoad="rolloverLoad('side-properties-classes','graphics/properties-classes-label-2.jpg','graphics/properties-classes-label-3.jpg');" src="graphics/properties-classes-label-3.jpg" vspace="0" width="120"></A><BR>
<A href="Properties.html" onMouseOut="rolloverOff('side-Properties');" onMouseOver="rolloverOn('side-Properties');"><IMG alt="Properties" border="0" height="12" hspace="0" name="side-Properties" onLoad="rolloverLoad('side-Properties','graphics/Properties-label-2.jpg','graphics/Properties-label-3.jpg');" src="graphics/Properties-label-3.jpg" vspace="0" width="120"></A><BR>
@@ -16,6 +22,9 @@
<A href="xml-parsing.html" onMouseOut="rolloverOff('side-xml-parsing');" onMouseOver="rolloverOn('side-xml-parsing');"><IMG alt="XML parsing" border="0" height="12" hspace="0" name="side-xml-parsing" onLoad="rolloverLoad('side-xml-parsing','graphics/xml-parsing-label-2.jpg','graphics/xml-parsing-label-3.jpg');" src="graphics/xml-parsing-label-3.jpg" vspace="0" width="120"></A><BR>
<IMG border="0" height="6" hspace="0" src="resources/separator.gif" vspace="0" width="120"><BR>
<A href="property-parsing.html" onMouseOut="rolloverOff('side-property-parsing');" onMouseOver="rolloverOn('side-property-parsing');"><IMG alt="Property parsing" border="0" height="12" hspace="0" name="side-property-parsing" onLoad="rolloverLoad('side-property-parsing','graphics/property-parsing-label-2.jpg','graphics/property-parsing-label-3.jpg');" src="graphics/property-parsing-label-3.jpg" vspace="0" width="120"></A><BR>
+ <IMG border="0" height="6" hspace="0" src="resources/separator.gif" vspace="0" width="120"><BR>
+ <A href="compound-properties.html" onMouseOut="rolloverOff('side-compound-properties');" onMouseOver="rolloverOn('side-compound-properties');"><IMG alt="Compound properties" border="0" height="12" hspace="0" name="side-compound-properties" onLoad="rolloverLoad('side-compound-properties','graphics/compound-properties-label-2.jpg','graphics/compound-properties-label-3.jpg');" src="graphics/compound-properties-label-3.jpg" vspace="0" width="120"></A><BR>
+ <A href="traits.html" onMouseOut="rolloverOff('side-traits');" onMouseOver="rolloverOn('side-traits');"><IMG alt="Traits" border="0" height="12" hspace="0" name="side-traits" onLoad="rolloverLoad('side-traits','graphics/traits-label-2.jpg','graphics/traits-label-3.jpg');" src="graphics/traits-label-3.jpg" vspace="0" width="120"></A><BR>
<IMG border="0" height="14" hspace="0" src="resources/close.gif" vspace="0" width="120"><BR></TD><TD align="left" valign="top" width="*"><TABLE border="0" cellpadding="3" cellspacing="0"><TR><TD><BR>
1.2 +10 -1 xml-site/targets/fop/design/alt.design/VerticalAlign.html
Index: VerticalAlign.html
===================================================================
RCS file: /home/cvs/xml-site/targets/fop/design/alt.design/VerticalAlign.html,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -r1.1 -r1.2
--- VerticalAlign.html 18 Mar 2002 08:50:02 -0000 1.1
+++ VerticalAlign.html 28 Apr 2002 14:44:10 -0000 1.2
@@ -3,7 +3,13 @@
<IMG border="0" height="6" hspace="0" src="resources/separator.gif" vspace="0" width="120"><BR>
<A href="../index.html" onMouseOut="rolloverOff('side-ext-6');" onMouseOver="rolloverOn('side-ext-6');"><IMG alt="NEW DESIGN" border="0" height="12" hspace="0" name="side-ext-6" onLoad="rolloverLoad('side-ext-6','graphics/ext-6-label-2.jpg','graphics/ext-6-label-3.jpg');" src="graphics/ext-6-label-3.jpg" vspace="0" width="120"></A><BR>
<IMG border="0" height="6" hspace="0" src="resources/separator.gif" vspace="0" width="120"><BR>
- <A href="index.html" onMouseOut="rolloverOff('side-index');" onMouseOver="rolloverOn('side-index');"><IMG alt="alt.properties" border="0" height="12" hspace="0" name="side-index" onLoad="rolloverLoad('side-index','graphics/index-label-2.jpg','graphics/index-label-3.jpg');" src="graphics/index-label-3.jpg" vspace="0" width="120"></A><BR>
+ <A href="index.html" onMouseOut="rolloverOff('side-index');" onMouseOver="rolloverOn('side-index');"><IMG alt="co-routines" border="0" height="12" hspace="0" name="side-index" onLoad="rolloverLoad('side-index','graphics/index-label-2.jpg','graphics/index-label-3.jpg');" src="graphics/index-label-3.jpg" vspace="0" width="120"></A><BR>
+ <A href="galleys.html" onMouseOut="rolloverOff('side-galleys');" onMouseOver="rolloverOn('side-galleys');"><IMG alt="galleys" border="0" height="12" hspace="0" name="side-galleys" onLoad="rolloverLoad('side-galleys','graphics/galleys-label-2.jpg','graphics/galleys-label-3.jpg');" src="graphics/galleys-label-3.jpg" vspace="0" width="120"></A><BR>
+ <A href="footnotes.html" onMouseOut="rolloverOff('side-footnotes');" onMouseOver="rolloverOn('side-footnotes');"><IMG alt="footnotes" border="0" height="12" hspace="0" name="side-footnotes" onLoad="rolloverLoad('side-footnotes','graphics/footnotes-label-2.jpg','graphics/footnotes-label-3.jpg');" src="graphics/footnotes-label-3.jpg" vspace="0" width="120"></A><BR>
+ <A href="keeps.html" onMouseOut="rolloverOff('side-keeps');" onMouseOver="rolloverOn('side-keeps');"><IMG alt="keeps" border="0" height="12" hspace="0" name="side-keeps" onLoad="rolloverLoad('side-keeps','graphics/keeps-label-2.jpg','graphics/keeps-label-3.jpg');" src="graphics/keeps-label-3.jpg" vspace="0" width="120"></A><BR>
+ <A href="spaces.html" onMouseOut="rolloverOff('side-spaces');" onMouseOver="rolloverOn('side-spaces');"><IMG alt="space-specifiers" border="0" height="12" hspace="0" name="side-spaces" onLoad="rolloverLoad('side-spaces','graphics/spaces-label-2.jpg','graphics/spaces-label-3.jpg');" src="graphics/spaces-label-3.jpg" vspace="0" width="120"></A><BR>
+ <IMG border="0" height="6" hspace="0" src="resources/separator.gif" vspace="0" width="120"><BR>
+ <A href="alt.properties.html" onMouseOut="rolloverOff('side-alt.properties');" onMouseOver="rolloverOn('side-alt.properties');"><IMG alt="alt.properties" border="0" height="12" hspace="0" name="side-alt.properties" onLoad="rolloverLoad('side-alt.properties','graphics/alt.properties-label-2.jpg','graphics/alt.properties-label-3.jpg');" src="graphics/alt.properties-label-3.jpg" vspace="0" width="120"></A><BR>
<A href="classes-overview.html" onMouseOut="rolloverOff('side-classes-overview');" onMouseOver="rolloverOn('side-classes-overview');"><IMG alt="Classes overview" border="0" height="12" hspace="0" name="side-classes-overview" onLoad="rolloverLoad('side-classes-overview','graphics/classes-overview-label-2.jpg','graphics/classes-overview-label-3.jpg');" src="graphics/classes-overview-label-3.jpg" vspace="0" width="120"></A><BR>
<A href="properties-classes.html" onMouseOut="rolloverOff('side-properties-classes');" onMouseOver="rolloverOn('side-properties-classes');"><IMG alt="Properties classes" border="0" height="12" hspace="0" name="side-properties-classes" onLoad="rolloverLoad('side-properties-classes','graphics/properties-classes-label-2.jpg','graphics/properties-classes-label-3.jpg');" src="graphics/properties-classes-label-3.jpg" vspace="0" width="120"></A><BR>
<A href="Properties.html" onMouseOut="rolloverOff('side-Properties');" onMouseOver="rolloverOn('side-Properties');"><IMG alt="Properties" border="0" height="12" hspace="0" name="side-Properties" onLoad="rolloverLoad('side-Properties','graphics/Properties-label-2.jpg','graphics/Properties-label-3.jpg');" src="graphics/Properties-label-3.jpg" vspace="0" width="120"></A><BR>
@@ -16,6 +22,9 @@
<A href="xml-parsing.html" onMouseOut="rolloverOff('side-xml-parsing');" onMouseOver="rolloverOn('side-xml-parsing');"><IMG alt="XML parsing" border="0" height="12" hspace="0" name="side-xml-parsing" onLoad="rolloverLoad('side-xml-parsing','graphics/xml-parsing-label-2.jpg','graphics/xml-parsing-label-3.jpg');" src="graphics/xml-parsing-label-3.jpg" vspace="0" width="120"></A><BR>
<IMG border="0" height="6" hspace="0" src="resources/separator.gif" vspace="0" width="120"><BR>
<A href="property-parsing.html" onMouseOut="rolloverOff('side-property-parsing');" onMouseOver="rolloverOn('side-property-parsing');"><IMG alt="Property parsing" border="0" height="12" hspace="0" name="side-property-parsing" onLoad="rolloverLoad('side-property-parsing','graphics/property-parsing-label-2.jpg','graphics/property-parsing-label-3.jpg');" src="graphics/property-parsing-label-3.jpg" vspace="0" width="120"></A><BR>
+ <IMG border="0" height="6" hspace="0" src="resources/separator.gif" vspace="0" width="120"><BR>
+ <A href="compound-properties.html" onMouseOut="rolloverOff('side-compound-properties');" onMouseOver="rolloverOn('side-compound-properties');"><IMG alt="Compound properties" border="0" height="12" hspace="0" name="side-compound-properties" onLoad="rolloverLoad('side-compound-properties','graphics/compound-properties-label-2.jpg','graphics/compound-properties-label-3.jpg');" src="graphics/compound-properties-label-3.jpg" vspace="0" width="120"></A><BR>
+ <A href="traits.html" onMouseOut="rolloverOff('side-traits');" onMouseOver="rolloverOn('side-traits');"><IMG alt="Traits" border="0" height="12" hspace="0" name="side-traits" onLoad="rolloverLoad('side-traits','graphics/traits-label-2.jpg','graphics/traits-label-3.jpg');" src="graphics/traits-label-3.jpg" vspace="0" width="120"></A><BR>
<IMG border="0" height="14" hspace="0" src="resources/close.gif" vspace="0" width="120"><BR></TD><TD align="left" valign="top" width="*"><TABLE border="0" cellpadding="3" cellspacing="0"><TR><TD><BR>
1.2 +10 -1 xml-site/targets/fop/design/alt.design/classes-overview.html
Index: classes-overview.html
===================================================================
RCS file: /home/cvs/xml-site/targets/fop/design/alt.design/classes-overview.html,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -r1.1 -r1.2
--- classes-overview.html 18 Mar 2002 08:50:02 -0000 1.1
+++ classes-overview.html 28 Apr 2002 14:44:10 -0000 1.2
@@ -3,7 +3,13 @@
<IMG border="0" height="6" hspace="0" src="resources/separator.gif" vspace="0" width="120"><BR>
<A href="../index.html" onMouseOut="rolloverOff('side-ext-6');" onMouseOver="rolloverOn('side-ext-6');"><IMG alt="NEW DESIGN" border="0" height="12" hspace="0" name="side-ext-6" onLoad="rolloverLoad('side-ext-6','graphics/ext-6-label-2.jpg','graphics/ext-6-label-3.jpg');" src="graphics/ext-6-label-3.jpg" vspace="0" width="120"></A><BR>
<IMG border="0" height="6" hspace="0" src="resources/separator.gif" vspace="0" width="120"><BR>
- <A href="index.html" onMouseOut="rolloverOff('side-index');" onMouseOver="rolloverOn('side-index');"><IMG alt="alt.properties" border="0" height="12" hspace="0" name="side-index" onLoad="rolloverLoad('side-index','graphics/index-label-2.jpg','graphics/index-label-3.jpg');" src="graphics/index-label-3.jpg" vspace="0" width="120"></A><BR>
+ <A href="index.html" onMouseOut="rolloverOff('side-index');" onMouseOver="rolloverOn('side-index');"><IMG alt="co-routines" border="0" height="12" hspace="0" name="side-index" onLoad="rolloverLoad('side-index','graphics/index-label-2.jpg','graphics/index-label-3.jpg');" src="graphics/index-label-3.jpg" vspace="0" width="120"></A><BR>
+ <A href="galleys.html" onMouseOut="rolloverOff('side-galleys');" onMouseOver="rolloverOn('side-galleys');"><IMG alt="galleys" border="0" height="12" hspace="0" name="side-galleys" onLoad="rolloverLoad('side-galleys','graphics/galleys-label-2.jpg','graphics/galleys-label-3.jpg');" src="graphics/galleys-label-3.jpg" vspace="0" width="120"></A><BR>
+ <A href="footnotes.html" onMouseOut="rolloverOff('side-footnotes');" onMouseOver="rolloverOn('side-footnotes');"><IMG alt="footnotes" border="0" height="12" hspace="0" name="side-footnotes" onLoad="rolloverLoad('side-footnotes','graphics/footnotes-label-2.jpg','graphics/footnotes-label-3.jpg');" src="graphics/footnotes-label-3.jpg" vspace="0" width="120"></A><BR>
+ <A href="keeps.html" onMouseOut="rolloverOff('side-keeps');" onMouseOver="rolloverOn('side-keeps');"><IMG alt="keeps" border="0" height="12" hspace="0" name="side-keeps" onLoad="rolloverLoad('side-keeps','graphics/keeps-label-2.jpg','graphics/keeps-label-3.jpg');" src="graphics/keeps-label-3.jpg" vspace="0" width="120"></A><BR>
+ <A href="spaces.html" onMouseOut="rolloverOff('side-spaces');" onMouseOver="rolloverOn('side-spaces');"><IMG alt="space-specifiers" border="0" height="12" hspace="0" name="side-spaces" onLoad="rolloverLoad('side-spaces','graphics/spaces-label-2.jpg','graphics/spaces-label-3.jpg');" src="graphics/spaces-label-3.jpg" vspace="0" width="120"></A><BR>
+ <IMG border="0" height="6" hspace="0" src="resources/separator.gif" vspace="0" width="120"><BR>
+ <A href="alt.properties.html" onMouseOut="rolloverOff('side-alt.properties');" onMouseOver="rolloverOn('side-alt.properties');"><IMG alt="alt.properties" border="0" height="12" hspace="0" name="side-alt.properties" onLoad="rolloverLoad('side-alt.properties','graphics/alt.properties-label-2.jpg','graphics/alt.properties-label-3.jpg');" src="graphics/alt.properties-label-3.jpg" vspace="0" width="120"></A><BR>
<IMG alt="Classes overview" border="0" height="12" hspace="0" src="graphics/classes-overview-label-1.jpg" vspace="0" width="120"><BR>
<A href="properties-classes.html" onMouseOut="rolloverOff('side-properties-classes');" onMouseOver="rolloverOn('side-properties-classes');"><IMG alt="Properties classes" border="0" height="12" hspace="0" name="side-properties-classes" onLoad="rolloverLoad('side-properties-classes','graphics/properties-classes-label-2.jpg','graphics/properties-classes-label-3.jpg');" src="graphics/properties-classes-label-3.jpg" vspace="0" width="120"></A><BR>
<A href="Properties.html" onMouseOut="rolloverOff('side-Properties');" onMouseOver="rolloverOn('side-Properties');"><IMG alt="Properties" border="0" height="12" hspace="0" name="side-Properties" onLoad="rolloverLoad('side-Properties','graphics/Properties-label-2.jpg','graphics/Properties-label-3.jpg');" src="graphics/Properties-label-3.jpg" vspace="0" width="120"></A><BR>
@@ -16,6 +22,9 @@
<A href="xml-parsing.html" onMouseOut="rolloverOff('side-xml-parsing');" onMouseOver="rolloverOn('side-xml-parsing');"><IMG alt="XML parsing" border="0" height="12" hspace="0" name="side-xml-parsing" onLoad="rolloverLoad('side-xml-parsing','graphics/xml-parsing-label-2.jpg','graphics/xml-parsing-label-3.jpg');" src="graphics/xml-parsing-label-3.jpg" vspace="0" width="120"></A><BR>
<IMG border="0" height="6" hspace="0" src="resources/separator.gif" vspace="0" width="120"><BR>
<A href="property-parsing.html" onMouseOut="rolloverOff('side-property-parsing');" onMouseOver="rolloverOn('side-property-parsing');"><IMG alt="Property parsing" border="0" height="12" hspace="0" name="side-property-parsing" onLoad="rolloverLoad('side-property-parsing','graphics/property-parsing-label-2.jpg','graphics/property-parsing-label-3.jpg');" src="graphics/property-parsing-label-3.jpg" vspace="0" width="120"></A><BR>
+ <IMG border="0" height="6" hspace="0" src="resources/separator.gif" vspace="0" width="120"><BR>
+ <A href="compound-properties.html" onMouseOut="rolloverOff('side-compound-properties');" onMouseOver="rolloverOn('side-compound-properties');"><IMG alt="Compound properties" border="0" height="12" hspace="0" name="side-compound-properties" onLoad="rolloverLoad('side-compound-properties','graphics/compound-properties-label-2.jpg','graphics/compound-properties-label-3.jpg');" src="graphics/compound-properties-label-3.jpg" vspace="0" width="120"></A><BR>
+ <A href="traits.html" onMouseOut="rolloverOff('side-traits');" onMouseOver="rolloverOn('side-traits');"><IMG alt="Traits" border="0" height="12" hspace="0" name="side-traits" onLoad="rolloverLoad('side-traits','graphics/traits-label-2.jpg','graphics/traits-label-3.jpg');" src="graphics/traits-label-3.jpg" vspace="0" width="120"></A><BR>
<IMG border="0" height="14" hspace="0" src="resources/close.gif" vspace="0" width="120"><BR></TD><TD align="left" valign="top" width="*"><TABLE border="0" cellpadding="3" cellspacing="0"><TR><TD><BR>
1.2 +104 -144 xml-site/targets/fop/design/alt.design/index.html
Index: index.html
===================================================================
RCS file: /home/cvs/xml-site/targets/fop/design/alt.design/index.html,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -r1.1 -r1.2
--- index.html 18 Mar 2002 08:50:02 -0000 1.1
+++ index.html 28 Apr 2002 14:44:10 -0000 1.2
@@ -1,9 +1,15 @@
-<HTML><HEAD><SCRIPT language="JavaScript" src="resources/script.js" type="text/javascript"></SCRIPT><TITLE>Implementing Properties</TITLE></HEAD><BODY alink="#cc0000" bgcolor="#ffffff" leftmargin="4" link="#039acc" marginheight="4" marginwidth="4" text="#000000" topmargin="4" vlink="#0086b2"><TABLE border="0" cellpadding="0" cellspacing="0" width="100%"><TR><TD align="left" height="60" rowspan="3" valign="top" width="135"><IMG border="0" height="60" hspace="0" src="resources/logo.gif" vspace="0" width="135"></TD><TD align="left" background="resources/line.gif" colspan="2" height="5" valign="top" width="100%"><IMG align="left" border="0" height="5" hspace="0" src="resources/line.gif" vspace="0" width="1"></TD><TD align="left" height="60" rowspan="3" valign="top" width="29"><IMG border="0" height="60" hspace="0" src="resources/right.gif" vspace="0" width="29"></TD></TR><TR><TD align="left" bgcolor="#0086b2" colspan="2" height="35" valign="top" width="100%"><IMG align="right" alt="" border="0" height="35" hspace="0" src="graphics/index-header.jpg" vspace="0" width="456"></TD></TR><TR><TD align="left" background="resources/bottom.gif" bgcolor="#0086b2" height="20" valign="top" width="100%"><IMG align="left" border="0" height="20" hspace="0" src="resources/bottom.gif" vspace="0" width="3"></TD><TD align="right" background="resources/bottom.gif" bgcolor="#0086b2" height="20" valign="top" width="288"><TABLE border="0" cellpadding="0" cellspacing="0" width="288"><TR><TD align="left" height="20" valign="top" width="96"><A href="http://xml.apache.org/" onMouseOut="rolloverOff('xml');" onMouseOver="rolloverOn('xml');" target="new"><IMG alt="http://xml.apache.org/" border="0" height="20" hspace="0" name="xml" onLoad="rolloverLoad('xml','resources/button-xml-hi.gif','resources/button-xml-lo.gif');" src="resources/button-xml-lo.gif" vspace="0" width="96"></A></TD><TD align="left" height="20" valign="top" width="96"><A href="http://www.apache.org/" onMouseOut="rolloverOff('asf');" onMouseOver="rolloverOn('asf');" target="new"><IMG alt="http://www.apache.org/" border="0" height="20" hspace="0" name="asf" onLoad="rolloverLoad('asf','resources/button-asf-hi.gif','resources/button-asf-lo.gif');" src="resources/button-asf-lo.gif" vspace="0" width="96"></A></TD><TD align="left" height="20" valign="top" width="96"><A href="http://www.w3.org/" onMouseOut="rolloverOff('w3c');" onMouseOver="rolloverOn('w3c');" target="new"><IMG alt="http://www.w3.org/" border="0" height="20" hspace="0" name="w3c" onLoad="rolloverLoad('w3c','resources/button-w3c-hi.gif','resources/button-w3c-lo.gif');" src="resources/button-w3c-lo.gif" vspace="0" width="96"></A></TD></TR></TABLE></TD></TR></TABLE><TABLE border="0" cellpadding="0" cellspacing="0" width="100%"><TR><TD align="left" valign="top" width="120"><IMG border="0" height="14" hspace="0" src="resources/join.gif" vspace="0" width="120"><BR>
+<HTML><HEAD><SCRIPT language="JavaScript" src="resources/script.js" type="text/javascript"></SCRIPT><TITLE>Implementing co-routines</TITLE></HEAD><BODY alink="#cc0000" bgcolor="#ffffff" leftmargin="4" link="#039acc" marginheight="4" marginwidth="4" text="#000000" topmargin="4" vlink="#0086b2"><TABLE border="0" cellpadding="0" cellspacing="0" width="100%"><TR><TD align="left" height="60" rowspan="3" valign="top" width="135"><IMG border="0" height="60" hspace="0" src="resources/logo.gif" vspace="0" width="135"></TD><TD align="left" background="resources/line.gif" colspan="2" height="5" valign="top" width="100%"><IMG align="left" border="0" height="5" hspace="0" src="resources/line.gif" vspace="0" width="1"></TD><TD align="left" height="60" rowspan="3" valign="top" width="29"><IMG border="0" height="60" hspace="0" src="resources/right.gif" vspace="0" width="29"></TD></TR><TR><TD align="left" bgcolor="#0086b2" colspan="2" height="35" valign="top" width="100%"><IMG align="right" alt="" border="0" height="35" hspace="0" src="graphics/index-header.jpg" vspace="0" width="456"></TD></TR><TR><TD align="left" background="resources/bottom.gif" bgcolor="#0086b2" height="20" valign="top" width="100%"><IMG align="left" border="0" height="20" hspace="0" src="resources/bottom.gif" vspace="0" width="3"></TD><TD align="right" background="resources/bottom.gif" bgcolor="#0086b2" height="20" valign="top" width="288"><TABLE border="0" cellpadding="0" cellspacing="0" width="288"><TR><TD align="left" height="20" valign="top" width="96"><A href="http://xml.apache.org/" onMouseOut="rolloverOff('xml');" onMouseOver="rolloverOn('xml');" target="new"><IMG alt="http://xml.apache.org/" border="0" height="20" hspace="0" name="xml" onLoad="rolloverLoad('xml','resources/button-xml-hi.gif','resources/button-xml-lo.gif');" src="resources/button-xml-lo.gif" vspace="0" width="96"></A></TD><TD align="left" height="20" valign="top" width="96"><A href="http://www.apache.org/" onMouseOut="rolloverOff('asf');" onMouseOver="rolloverOn('asf');" target="new"><IMG alt="http://www.apache.org/" border="0" height="20" hspace="0" name="asf" onLoad="rolloverLoad('asf','resources/button-asf-hi.gif','resources/button-asf-lo.gif');" src="resources/button-asf-lo.gif" vspace="0" width="96"></A></TD><TD align="left" height="20" valign="top" width="96"><A href="http://www.w3.org/" onMouseOut="rolloverOff('w3c');" onMouseOver="rolloverOn('w3c');" target="new"><IMG alt="http://www.w3.org/" border="0" height="20" hspace="0" name="w3c" onLoad="rolloverLoad('w3c','resources/button-w3c-hi.gif','resources/button-w3c-lo.gif');" src="resources/button-w3c-lo.gif" vspace="0" width="96"></A></TD></TR></TABLE></TD></TR></TABLE><TABLE border="0" cellpadding="0" cellspacing="0" width="100%"><TR><TD align="left" valign="top" width="120"><IMG border="0" height="14" hspace="0" src="resources/join.gif" vspace="0" width="120"><BR>
<A href="http://xml.apache.org/fop/" onMouseOut="rolloverOff('side-ext-2');" onMouseOver="rolloverOn('side-ext-2');"><IMG alt="About FOP" border="0" height="12" hspace="0" name="side-ext-2" onLoad="rolloverLoad('side-ext-2','graphics/ext-2-label-2.jpg','graphics/ext-2-label-3.jpg');" src="graphics/ext-2-label-3.jpg" vspace="0" width="120"></A><BR>
<IMG border="0" height="6" hspace="0" src="resources/separator.gif" vspace="0" width="120"><BR>
<A href="../index.html" onMouseOut="rolloverOff('side-ext-6');" onMouseOver="rolloverOn('side-ext-6');"><IMG alt="NEW DESIGN" border="0" height="12" hspace="0" name="side-ext-6" onLoad="rolloverLoad('side-ext-6','graphics/ext-6-label-2.jpg','graphics/ext-6-label-3.jpg');" src="graphics/ext-6-label-3.jpg" vspace="0" width="120"></A><BR>
<IMG border="0" height="6" hspace="0" src="resources/separator.gif" vspace="0" width="120"><BR>
- <IMG alt="alt.properties" border="0" height="12" hspace="0" src="graphics/index-label-1.jpg" vspace="0" width="120"><BR>
+ <IMG alt="co-routines" border="0" height="12" hspace="0" src="graphics/index-label-1.jpg" vspace="0" width="120"><BR>
+ <A href="galleys.html" onMouseOut="rolloverOff('side-galleys');" onMouseOver="rolloverOn('side-galleys');"><IMG alt="galleys" border="0" height="12" hspace="0" name="side-galleys" onLoad="rolloverLoad('side-galleys','graphics/galleys-label-2.jpg','graphics/galleys-label-3.jpg');" src="graphics/galleys-label-3.jpg" vspace="0" width="120"></A><BR>
+ <A href="footnotes.html" onMouseOut="rolloverOff('side-footnotes');" onMouseOver="rolloverOn('side-footnotes');"><IMG alt="footnotes" border="0" height="12" hspace="0" name="side-footnotes" onLoad="rolloverLoad('side-footnotes','graphics/footnotes-label-2.jpg','graphics/footnotes-label-3.jpg');" src="graphics/footnotes-label-3.jpg" vspace="0" width="120"></A><BR>
+ <A href="keeps.html" onMouseOut="rolloverOff('side-keeps');" onMouseOver="rolloverOn('side-keeps');"><IMG alt="keeps" border="0" height="12" hspace="0" name="side-keeps" onLoad="rolloverLoad('side-keeps','graphics/keeps-label-2.jpg','graphics/keeps-label-3.jpg');" src="graphics/keeps-label-3.jpg" vspace="0" width="120"></A><BR>
+ <A href="spaces.html" onMouseOut="rolloverOff('side-spaces');" onMouseOver="rolloverOn('side-spaces');"><IMG alt="space-specifiers" border="0" height="12" hspace="0" name="side-spaces" onLoad="rolloverLoad('side-spaces','graphics/spaces-label-2.jpg','graphics/spaces-label-3.jpg');" src="graphics/spaces-label-3.jpg" vspace="0" width="120"></A><BR>
+ <IMG border="0" height="6" hspace="0" src="resources/separator.gif" vspace="0" width="120"><BR>
+ <A href="alt.properties.html" onMouseOut="rolloverOff('side-alt.properties');" onMouseOver="rolloverOn('side-alt.properties');"><IMG alt="alt.properties" border="0" height="12" hspace="0" name="side-alt.properties" onLoad="rolloverLoad('side-alt.properties','graphics/alt.properties-label-2.jpg','graphics/alt.properties-label-3.jpg');" src="graphics/alt.properties-label-3.jpg" vspace="0" width="120"></A><BR>
<A href="classes-overview.html" onMouseOut="rolloverOff('side-classes-overview');" onMouseOver="rolloverOn('side-classes-overview');"><IMG alt="Classes overview" border="0" height="12" hspace="0" name="side-classes-overview" onLoad="rolloverLoad('side-classes-overview','graphics/classes-overview-label-2.jpg','graphics/classes-overview-label-3.jpg');" src="graphics/classes-overview-label-3.jpg" vspace="0" width="120"></A><BR>
<A href="properties-classes.html" onMouseOut="rolloverOff('side-properties-classes');" onMouseOver="rolloverOn('side-properties-classes');"><IMG alt="Properties classes" border="0" height="12" hspace="0" name="side-properties-classes" onLoad="rolloverLoad('side-properties-classes','graphics/properties-classes-label-2.jpg','graphics/properties-classes-label-3.jpg');" src="graphics/properties-classes-label-3.jpg" vspace="0" width="120"></A><BR>
<A href="Properties.html" onMouseOut="rolloverOff('side-Properties');" onMouseOver="rolloverOn('side-Properties');"><IMG alt="Properties" border="0" height="12" hspace="0" name="side-Properties" onLoad="rolloverLoad('side-Properties','graphics/Properties-label-2.jpg','graphics/Properties-label-3.jpg');" src="graphics/Properties-label-3.jpg" vspace="0" width="120"></A><BR>
@@ -16,159 +22,113 @@
<A href="xml-parsing.html" onMouseOut="rolloverOff('side-xml-parsing');" onMouseOver="rolloverOn('side-xml-parsing');"><IMG alt="XML parsing" border="0" height="12" hspace="0" name="side-xml-parsing" onLoad="rolloverLoad('side-xml-parsing','graphics/xml-parsing-label-2.jpg','graphics/xml-parsing-label-3.jpg');" src="graphics/xml-parsing-label-3.jpg" vspace="0" width="120"></A><BR>
<IMG border="0" height="6" hspace="0" src="resources/separator.gif" vspace="0" width="120"><BR>
<A href="property-parsing.html" onMouseOut="rolloverOff('side-property-parsing');" onMouseOver="rolloverOn('side-property-parsing');"><IMG alt="Property parsing" border="0" height="12" hspace="0" name="side-property-parsing" onLoad="rolloverLoad('side-property-parsing','graphics/property-parsing-label-2.jpg','graphics/property-parsing-label-3.jpg');" src="graphics/property-parsing-label-3.jpg" vspace="0" width="120"></A><BR>
+ <IMG border="0" height="6" hspace="0" src="resources/separator.gif" vspace="0" width="120"><BR>
+ <A href="compound-properties.html" onMouseOut="rolloverOff('side-compound-properties');" onMouseOver="rolloverOn('side-compound-properties');"><IMG alt="Compound properties" border="0" height="12" hspace="0" name="side-compound-properties" onLoad="rolloverLoad('side-compound-properties','graphics/compound-properties-label-2.jpg','graphics/compound-properties-label-3.jpg');" src="graphics/compound-properties-label-3.jpg" vspace="0" width="120"></A><BR>
+ <A href="traits.html" onMouseOut="rolloverOff('side-traits');" onMouseOver="rolloverOn('side-traits');"><IMG alt="Traits" border="0" height="12" hspace="0" name="side-traits" onLoad="rolloverLoad('side-traits','graphics/traits-label-2.jpg','graphics/traits-label-3.jpg');" src="graphics/traits-label-3.jpg" vspace="0" width="120"></A><BR>
<IMG border="0" height="14" hspace="0" src="resources/close.gif" vspace="0" width="120"><BR></TD><TD align="left" valign="top" width="*"><TABLE border="0" cellpadding="3" cellspacing="0"><TR><TD><BR>
- <DIV align="right"><TABLE border="0" cellpadding="0" cellspacing="0" width="98%"><TR><TD align="right" height="7" valign="bottom" width="9"><IMG border="0" height="7" hspace="0" src="resources/bar-top-left.gif" vspace="0" width="9"></TD><TD background="resources/bar-border-top.gif"><IMG border="0" height="5" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD><TD align="left" height="7" valign="bottom" width="9"><IMG border="0" height="7" hspace="0" src="resources/bar-top-right.gif" vspace="0" width="9"></TD></TR><TR><TD background="resources/bar-border-left.gif" width="9"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="9"></TD><TD bgcolor="#0086b2" width="100%"><FONT color="#ffffff" face="arial,helvetica,sanserif" size="+1"><IMG border="0" height="5" hspace="0" src="resources/void.gif" vspace="0" width="5"><B>An alternative properties implementation</B></FONT></TD><TD background="resources/bar-border-right.gif" width="9"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="9"></TD></TR><TR><TD align="right" height="12" valign="top" width="9"><IMG border="0" height="12" hspace="0" src="resources/bar-bottom-left.gif" vspace="0" width="9"></TD><TD background="resources/bar-border-bottom.gif"><IMG border="0" height="12" hspace="0" src="resources/void.gif" vspace="0"></TD><TD align="left" height="12" valign="top" width="9"><IMG border="0" height="12" hspace="0" src="resources/bar-bottom-right.gif" vspace="0" width="9"></TD></TR></TABLE><TABLE border="0" cellpadding="0" cellspacing="0" width="98%"><TR><TD><FONT color="#000000" face="arial,helvetica,sanserif">
- <P><TABLE border="0" cellpadding="0" cellspacing="3" width="100%"><TR><TD valign="top" width="28"><IMG alt="Note" border="0" height="29" hspace="0" src="resources/note.gif" vspace="0" width="28"></TD><TD valign="top"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1"><I>
- The following discussion focusses on the relationship between
- Flow Objects in the Flow Object tree, and properties. There
- is no (or only passing) discussion of the relationship between
- properties and traits, and by extension, between properties
- and the Area tree. The discussion is illustrated with some
- pseudo-UML diagrams.
- </I></FONT></TD></TR></TABLE></P>
+ <DIV align="right"><TABLE border="0" cellpadding="0" cellspacing="0" width="98%"><TR><TD align="right" height="7" valign="bottom" width="9"><IMG border="0" height="7" hspace="0" src="resources/bar-top-left.gif" vspace="0" width="9"></TD><TD background="resources/bar-border-top.gif"><IMG border="0" height="5" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD><TD align="left" height="7" valign="bottom" width="9"><IMG border="0" height="7" hspace="0" src="resources/bar-top-right.gif" vspace="0" width="9"></TD></TR><TR><TD background="resources/bar-border-left.gif" width="9"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="9"></TD><TD bgcolor="#0086b2" width="100%"><FONT color="#ffffff" face="arial,helvetica,sanserif" size="+1"><IMG border="0" height="5" hspace="0" src="resources/void.gif" vspace="0" width="5"><B>Implementing Co-routines in FOP</B></FONT></TD><TD background="resources/bar-border-right.gif" width="9"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="9"></TD></TR><TR><TD align="right" height="12" valign="top" width="9"><IMG border="0" height="12" hspace="0" src="resources/bar-bottom-left.gif" vspace="0" width="9"></TD><TD background="resources/bar-border-bottom.gif"><IMG border="0" height="12" hspace="0" src="resources/void.gif" vspace="0"></TD><TD align="left" height="12" valign="top" width="9"><IMG border="0" height="12" hspace="0" src="resources/bar-bottom-right.gif" vspace="0" width="9"></TD></TR></TABLE><TABLE border="0" cellpadding="0" cellspacing="0" width="98%"><TR><TD><FONT color="#000000" face="arial,helvetica,sanserif">
<P align="left">
- Property handling is complex and expensive. Varying numbers of
- properties apply to individual Flow Objects
- <B>(FOs)</B> in the <B>FO
- tree </B> but any property may effectively be
- assigned a value on any element of the tree. If that property
- is inheritable, its defined value will then be available to
- any children of the defining FO.
+ All general page layout systems have to solve the same
+ fundamental problem: expressing a flow of text with its own
+ natural structure as a series of pages corresponding to the
+ physical and logical structure of the output medium. This
+ simple description disguises many complexities. Version 1.0
+ of the Recommendation, in Section 3, <I>Introduction to
+ Formatting </I>, includes the following comments.
</P>
<P><TABLE border="0" cellpadding="0" cellspacing="3" width="100%"><TR><TD valign="top" width="28"><IMG alt="Note" border="0" height="29" hspace="0" src="resources/note.gif" vspace="0" width="28"></TD><TD valign="top"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1"><I>
- <I>(XSL 1.0 Rec)</I> <B>5.1.4 Inheritance</B>
- ...The inheritable properties can be placed on any formatting
- object.
+ [Formatting] comprises several steps, some of which depend on
+ others in a non-sequential way.<BR> ...and...<BR>
+ [R]efinement is not necessarily a straightforward, sequential
+ procedure, but may involve look-ahead, back-tracking, or
+ control-splicing with other processes in the formatter.
</I></FONT></TD></TR></TABLE></P>
- <P align="left">
- Even if the value is not inheritable, it may be accessed by
- its children through the <CODE><FONT face="courier, monospaced">inherit</FONT></CODE> keyword or the
- <CODE><FONT face="courier, monospaced">from-parent()</FONT></CODE> core function, and potentially by
- any of its descendents through the
- <CODE><FONT face="courier, monospaced">from-nearest-specified-value()</FONT></CODE> core function.
- </P>
- <P align="left">
- In addition to the assigned values of properties, almost every
- property has an <B>initial value</B> which is used
- when no value has been assigned.
- </P>
- <DIV align="right"><TABLE border="0" cellpadding="0" cellspacing="0" width="95%"><TR><TD align="right" height="7" valign="bottom" width="9"><IMG border="0" height="7" hspace="0" src="resources/bar-top-left.gif" vspace="0" width="9"></TD><TD background="resources/bar-border-top.gif"><IMG border="0" height="5" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD><TD align="left" height="7" valign="bottom" width="9"><IMG border="0" height="7" hspace="0" src="resources/bar-top-right.gif" vspace="0" width="9"></TD></TR><TR><TD background="resources/bar-border-left.gif" width="9"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="9"></TD><TD bgcolor="#0086b2" width="100%"><FONT color="#ffffff" face="arial,helvetica,sanserif"><IMG border="0" height="5" hspace="0" src="resources/void.gif" vspace="0" width="5"><B>The history problem</B></FONT></TD><TD background="resources/bar-border-right.gif" width="9"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="9"></TD></TR><TR><TD align="right" height="12" valign="top" width="9"><IMG border="0" height="12" hspace="0" src="resources/bar-bottom-left.gif" vspace="0" width="9"></TD><TD background="resources/bar-border-bottom.gif"><IMG border="0" height="12" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD><TD align="left" height="12" valign="top" width="9"><IMG border="0" height="12" hspace="0" src="resources/bar-bottom-right.gif" vspace="0" width="9"></TD></TR></TABLE><TABLE border="0" cellpadding="0" cellspacing="0" width="95%"><TR><TD><FONT color="#000000" face="arial,helvetica,sanserif">
- </FONT></TD></TR></TABLE></DIV><BR>
- <P align="left">
- The difficulty and expense of handling properties comes from
- this univeral inheritance possibility. The list of properties
- which are assigned values on any particular <I>FO</I>
- element will not generally be large, but a current value is
- required for each property which applies to the <I>FO</I>
- being processed.
- </P>
- <P align="left">
- The environment from which these values may be selected
- includes, for each <I>FO</I>, for each applicable property,
- the value assigned on this <I>FO</I>, the value which
- applied to the parent of this <I>FO</I>, the nearest value
- specified on an ancestor of this element, and the initial
- value of the property.
- </P>
- <DIV align="right"><TABLE border="0" cellpadding="0" cellspacing="0" width="95%"><TR><TD align="right" height="7" valign="bottom" width="9"><IMG border="0" height="7" hspace="0" src="resources/bar-top-left.gif" vspace="0" width="9"></TD><TD background="resources/bar-border-top.gif"><IMG border="0" height="5" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD><TD align="left" height="7" valign="bottom" width="9"><IMG border="0" height="7" hspace="0" src="resources/bar-top-right.gif" vspace="0" width="9"></TD></TR><TR><TD background="resources/bar-border-left.gif" width="9"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="9"></TD><TD bgcolor="#0086b2" width="100%"><FONT color="#ffffff" face="arial,helvetica,sanserif"><IMG border="0" height="5" hspace="0" src="resources/void.gif" vspace="0" width="5"><B>Data requirement and structure</B></FONT></TD><TD background="resources/bar-border-right.gif" width="9"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="9"></TD></TR><TR><TD align="right" height="12" valign="top" width="9"><IMG border="0" height="12" hspace="0" src="resources/bar-bottom-left.gif" vspace="0" width="9"></TD><TD background="resources/bar-border-bottom.gif"><IMG border="0" height="12" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD><TD align="left" height="12" valign="top" width="9"><IMG border="0" height="12" hspace="0" src="resources/bar-bottom-right.gif" vspace="0" width="9"></TD></TR></TABLE><TABLE border="0" cellpadding="0" cellspacing="0" width="95%"><TR><TD><FONT color="#000000" face="arial,helvetica,sanserif">
- <P align="left">
- This determines the minimum set of properties and associated
- property value assignments that is necessary for the
- processing of any individual <I>FO</I>. Implicit in this
- set is the set of properties and associated values,
- effective on the current <I>FO</I>, that were assigned on
- that <I>FO</I>.
- </P>
- <P align="left">
- This minimum requirement - the initial value, the
- nearest ancestor specified value, the parent computed value
- and the value assigned to the current element -
- suggests a stack implementation.
- </P>
- </FONT></TD></TR></TABLE></DIV><BR>
- <DIV align="right"><TABLE border="0" cellpadding="0" cellspacing="0" width="95%"><TR><TD align="right" height="7" valign="bottom" width="9"><IMG border="0" height="7" hspace="0" src="resources/bar-top-left.gif" vspace="0" width="9"></TD><TD background="resources/bar-border-top.gif"><IMG border="0" height="5" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD><TD align="left" height="7" valign="bottom" width="9"><IMG border="0" height="7" hspace="0" src="resources/bar-top-right.gif" vspace="0" width="9"></TD></TR><TR><TD background="resources/bar-border-left.gif" width="9"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="9"></TD><TD bgcolor="#0086b2" width="100%"><FONT color="#ffffff" face="arial,helvetica,sanserif"><IMG border="0" height="5" hspace="0" src="resources/void.gif" vspace="0" width="5"><B>Stack considerations</B></FONT></TD><TD background="resources/bar-border-right.gif" width="9"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="9"></TD></TR><TR><TD align="right" height="12" valign="top" width="9"><IMG border="0" height="12" hspace="0" src="resources/bar-bottom-left.gif" vspace="0" width="9"></TD><TD background="resources/bar-border-bottom.gif"><IMG border="0" height="12" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD><TD align="left" height="12" valign="top" width="9"><IMG border="0" height="12" hspace="0" src="resources/bar-bottom-right.gif" vspace="0" width="9"></TD></TR></TABLE><TABLE border="0" cellpadding="0" cellspacing="0" width="95%"><TR><TD><FONT color="#000000" face="arial,helvetica,sanserif">
- <P align="left">
- One possibility is to push to the stack only a minimal set
- of required elements. When a value is assigned, the
- relevant form or forms of that value (specified, computed,
- actual) are pushed onto the stack. As long as each
- <I>FO</I> maintains a list of the properties which were
- assigned from it, the value can be popped when the focus of
- FO processing retreats back up the <I>FO</I> tree.
- </P>
- <P align="left">
- The complication is that, for elements which are not
- automatically inherited, when an <I>FO</I> is encountered
- which does <B>not</B> assign a value to the
- property, the initial value must either be already at the
- top of the stack or be pushed onto the stack.
- </P>
- <P align="left">
- As a first approach, the simplest procedure may be to push a
- current value onto the stack for every element - initial
- values for non-inherited properties and the parental value
- otherwise. Then perform any processing of assigned values.
- This simplifies program logic at what is hopefully a small
- cost in memory and processing time. It may be tuned in a
- later iteration.
- </P>
- <DIV align="right"><TABLE border="0" cellpadding="0" cellspacing="0" width="90%"><TR><TD align="right" height="7" valign="bottom" width="9"><IMG border="0" height="7" hspace="0" src="resources/bar-top-left.gif" vspace="0" width="9"></TD><TD background="resources/bar-border-top.gif"><IMG border="0" height="5" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD><TD align="left" height="7" valign="bottom" width="9"><IMG border="0" height="7" hspace="0" src="resources/bar-top-right.gif" vspace="0" width="9"></TD></TR><TR><TD background="resources/bar-border-left.gif" width="9"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="9"></TD><TD bgcolor="#0086b2" width="100%"><FONT color="#ffffff" face="arial,helvetica,sanserif" size="-1"><IMG border="0" height="5" hspace="0" src="resources/void.gif" vspace="0" width="5"><B>Stack implementation</B></FONT></TD><TD background="resources/bar-border-right.gif" width="9"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="9"></TD></TR><TR><TD align="right" height="12" valign="top" width="9"><IMG border="0" height="12" hspace="0" src="resources/bar-bottom-left.gif" vspace="0" width="9"></TD><TD background="resources/bar-border-bottom.gif"><IMG border="0" height="12" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD><TD align="left" height="12" valign="top" width="9"><IMG border="0" height="12" hspace="0" src="resources/bar-bottom-right.gif" vspace="0" width="9"></TD></TR></TABLE><TABLE border="0" cellpadding="0" cellspacing="0" width="90%"><TR><TD><FONT color="#000000" face="arial,helvetica,sanserif">
- <P align="left">
- Initial attempts at this implementation have used
- <CODE><FONT face="courier, monospaced">LinkedList</FONT></CODE>s as the stacks, on the assumption
- that
- </P>
- <UL>
-
- <LI>random access would not be required</LI>
- <LI>
- pushing and popping of list elements requires nearly
- constant (low) time
- </LI>
- <LI> no penalty for first addition to an empty list</LI>
- <LI>efficient access to both bottom and top of stack</LI>
- </UL>
- <P align="left">
- However, it may be required to perform stack access
- operations from an arbitrary place on the stack, in which
- case it would probably be more efficient to use
- <CODE><FONT face="courier, monospaced">ArrayList</FONT></CODE>s instead.
- </P>
- </FONT></TD></TR></TABLE></DIV><BR>
- </FONT></TD></TR></TABLE></DIV><BR>
- <DIV align="right"><TABLE border="0" cellpadding="0" cellspacing="0" width="95%"><TR><TD align="right" height="7" valign="bottom" width="9"><IMG border="0" height="7" hspace="0" src="resources/bar-top-left.gif" vspace="0" width="9"></TD><TD background="resources/bar-border-top.gif"><IMG border="0" height="5" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD><TD align="left" height="7" valign="bottom" width="9"><IMG border="0" height="7" hspace="0" src="resources/bar-top-right.gif" vspace="0" width="9"></TD></TR><TR><TD background="resources/bar-border-left.gif" width="9"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="9"></TD><TD bgcolor="#0086b2" width="100%"><FONT color="#ffffff" face="arial,helvetica,sanserif"><IMG border="0" height="5" hspace="0" src="resources/void.gif" vspace="0" width="5"><B>Class vs instance</B></FONT></TD><TD background="resources/bar-border-right.gif" width="9"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="9"></TD></TR><TR><TD align="right" height="12" valign="top" width="9"><IMG border="0" height="12" hspace="0" src="resources/bar-bottom-left.gif" vspace="0" width="9"></TD><TD background="resources/bar-border-bottom.gif"><IMG border="0" height="12" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD><TD align="left" height="12" valign="top" width="9"><IMG border="0" height="12" hspace="0" src="resources/bar-bottom-right.gif" vspace="0" width="9"></TD></TR></TABLE><TABLE border="0" cellpadding="0" cellspacing="0" width="95%"><TR><TD><FONT color="#000000" face="arial,helvetica,sanserif">
+ <P align="left">Section 3.1, <I>Conceptual Procedure</I>, includes:</P>
+ <P><TABLE border="0" cellpadding="0" cellspacing="3" width="100%"><TR><TD valign="top" width="28"><IMG alt="Note" border="0" height="29" hspace="0" src="resources/note.gif" vspace="0" width="28"></TD><TD valign="top"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1"><I>
+ The procedure works by processing formatting objects. Each
+ object, while being processed, may initiate processing in
+ other objects. While the objects are hierarchically
+ structured, the processing is not; processing of a given
+ object is rather like a co-routine which may pass control to
+ other processes, but pick up again later where it left off.
+ </I></FONT></TD></TR></TABLE></P>
+ <DIV align="right"><TABLE border="0" cellpadding="0" cellspacing="0" width="95%"><TR><TD align="right" height="7" valign="bottom" width="9"><IMG border="0" height="7" hspace="0" src="resources/bar-top-left.gif" vspace="0" width="9"></TD><TD background="resources/bar-border-top.gif"><IMG border="0" height="5" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD><TD align="left" height="7" valign="bottom" width="9"><IMG border="0" height="7" hspace="0" src="resources/bar-top-right.gif" vspace="0" width="9"></TD></TR><TR><TD background="resources/bar-border-left.gif" width="9"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="9"></TD><TD bgcolor="#0086b2" width="100%"><FONT color="#ffffff" face="arial,helvetica,sanserif"><IMG border="0" height="5" hspace="0" src="resources/void.gif" vspace="0" width="5"><B>Application of co-routines</B></FONT></TD><TD background="resources/bar-border-right.gif" width="9"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="9"></TD></TR><TR><TD align="right" height="12" valign="top" width="9"><IMG border="0" height="12" hspace="0" src="resources/bar-bottom-left.gif" vspace="0" width="9"></TD><TD background="resources/bar-border-bottom.gif"><IMG border="0" height="12" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD><TD align="left" height="12" valign="top" width="9"><IMG border="0" height="12" hspace="0" src="resources/bar-bottom-right.gif" vspace="0" width="9"></TD></TR></TABLE><TABLE border="0" cellpadding="0" cellspacing="0" width="95%"><TR><TD><FONT color="#000000" face="arial,helvetica,sanserif">
<P align="left">
- An individual stack would contain values for a particular
- property, and the context of the stack is the property class
- as a whole. The property instances would be represented by
- the individual values on the stack. If properties are to be
- represented as instantiations of the class, the stack
- entries would presumably be references to, or at least
- referenced from, individual property objects. However, the
- most important information about individual property
- instances is the value assigned, and the relationship of
- this property object to its ancestors and its descendents.
- Other information would include the ownership of a property
- instance by a particular <I>FO</I>, and, in the other
- direction, the membership of the property in the set of
- properties for which an <I>FO</I> has defined values.
- </P>
- <P align="left">
- In the presence of a stack, however, none of this required
- information mandates the instantiation of properties. All
- of the information mentioned so far can be effectively
- represented by a stack position and a link to an
- <I>FO</I>. If the property stack is maintained in
- parallel with a stack of <I>FOs</I>, even that link is
- implicit in the stack position.
+ If one looks only at the flow side of the equation, it's
+ difficult to see what the problem might be. The ordering of
+ the elements of the flow is preserved in the area tree, and
+ where elements are in an hierarchical relationship in the
+ flow, they will generally be in an hierarchical relationship
+ in the area tree. In such circumstances, the recursive
+ processing of the flow seems quite natural.
+ </P>
+ <P align="left">
+ The problem becomes more obvious when one thinks about the
+ imposition of an unrelated page structure over the
+ hierarchical structure of the document content. Take, e.g.,
+ the processing of a nested flow structure which, at a certain
+ point, is scanning text and generating line-areas, nested
+ within other block areas and possibly other line areas. The
+ page fills in the middle of this process. Processing at the
+ lowest level in the tree must now suspend, immediately
+ following the production of the line-area which filled the
+ page. This same event, however, must also trigger the closing
+ and flushing to the area tree of every open area of which the last
+ line-area was a descendant.
+ </P>
+ <P align="left">
+ Once all of these areas have been closed, some dormant process
+ or processes must wake up, flush the area sub-tree
+ representing the page, and open a new page sub-tree in the
+ area tree. Then the whole nested structure of flow objects
+ and area production must be re-activated, at the point in
+ processing at which the areas of the previous page were
+ finalised, but with the new page environment. The most
+ natural way of expressing the temporal relationship of these
+ processes is by means of co-routines.
+ </P>
+ <P align="left">
+ Normal sub-routines (methods) display a hierarchical
+ relationship where process A suspends on invoking process B,
+ which on termination returns control to A which resumes from
+ the point of suspension. Co-routines instead have a parallel
+ relationship. Process A suspends on invoking process B, but
+ process B also suspends on returning control to process A. To
+ process B, this return of control appears to be an invocation
+ of process A. When process A subsequently invokes B and
+ suspends, B behaves as though its previous invocation of A has
+ returned, and it resumes from the point of that invocation.
+ So control bounces between the two, each one resuming where it
+ left off.<BR><BR>
+ <B>Figure 1</B>
+ </P>
+ <P align="center"><IMG alt="Co-routine diagram" border="0" hspace="4" src="coroutines.png" vspace="4"></P>
+ <P align="left">
+ For example, think of a page-production method working on a
+ complex page-sequence-master.
+ </P>
+ <DIV align="center"><TABLE border="0" cellpadding="0" cellspacing="4"><TR><TD bgcolor="#0086b2" height="1" width="1"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD><TD bgcolor="#0086b2" height="1"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD><TD bgcolor="#0086b2" height="1" width="1"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD></TR><TR><TD bgcolor="#0086b2" width="1"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD><TD bgcolor="#ffffff"><PRE>
+ void makePages(...) {
+ ...
+ while (pageSequence.hasNext()) {
+ ...
+ page = generateNextPage(...);
+ boolean over = flow.fillPage(page);
+ if (over) return;
+ }
+ }
+ </PRE></TD><TD bgcolor="#0086b2" width="1"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD></TR><TR><TD bgcolor="#0086b2" height="1" width="1"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD><TD bgcolor="#0086b2" height="1"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD><TD bgcolor="#0086b2" height="1" width="1"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD></TR></TABLE></DIV>
+ <P align="left">
+ The <CODE><FONT face="courier, monospaced">fillPage()</FONT></CODE> method, when it fills a page, will
+ have unfinished business with the flow, which it will want to
+ resume at the next call; hence co-routines. One way to
+ implement them in Java is by threads synchronised on some
+ common argument-passing object.
</P>
</FONT></TD></TR></TABLE></DIV><BR>
- <P align="left">
- <B>Next:</B> <A href="classes-overview.html">property classes overview.</A>
- </P>
</FONT></TD></TR></TABLE></DIV><BR>
</TD></TR></TABLE></TD></TR></TABLE><BR><TABLE border="0" cellpadding="0" cellspacing="0" width="100%"><TR><TD bgcolor="#0086b2"><IMG height="1" src="images/dot.gif" width="1"></TD></TR><TR><TD align="center"><FONT color="#0086b2" face="arial,helvetica,sanserif" size="-1"><I>
1.2 +10 -1 xml-site/targets/fop/design/alt.design/properties-classes.html
Index: properties-classes.html
===================================================================
RCS file: /home/cvs/xml-site/targets/fop/design/alt.design/properties-classes.html,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -r1.1 -r1.2
--- properties-classes.html 18 Mar 2002 08:50:02 -0000 1.1
+++ properties-classes.html 28 Apr 2002 14:44:10 -0000 1.2
@@ -3,7 +3,13 @@
<IMG border="0" height="6" hspace="0" src="resources/separator.gif" vspace="0" width="120"><BR>
<A href="../index.html" onMouseOut="rolloverOff('side-ext-6');" onMouseOver="rolloverOn('side-ext-6');"><IMG alt="NEW DESIGN" border="0" height="12" hspace="0" name="side-ext-6" onLoad="rolloverLoad('side-ext-6','graphics/ext-6-label-2.jpg','graphics/ext-6-label-3.jpg');" src="graphics/ext-6-label-3.jpg" vspace="0" width="120"></A><BR>
<IMG border="0" height="6" hspace="0" src="resources/separator.gif" vspace="0" width="120"><BR>
- <A href="index.html" onMouseOut="rolloverOff('side-index');" onMouseOver="rolloverOn('side-index');"><IMG alt="alt.properties" border="0" height="12" hspace="0" name="side-index" onLoad="rolloverLoad('side-index','graphics/index-label-2.jpg','graphics/index-label-3.jpg');" src="graphics/index-label-3.jpg" vspace="0" width="120"></A><BR>
+ <A href="index.html" onMouseOut="rolloverOff('side-index');" onMouseOver="rolloverOn('side-index');"><IMG alt="co-routines" border="0" height="12" hspace="0" name="side-index" onLoad="rolloverLoad('side-index','graphics/index-label-2.jpg','graphics/index-label-3.jpg');" src="graphics/index-label-3.jpg" vspace="0" width="120"></A><BR>
+ <A href="galleys.html" onMouseOut="rolloverOff('side-galleys');" onMouseOver="rolloverOn('side-galleys');"><IMG alt="galleys" border="0" height="12" hspace="0" name="side-galleys" onLoad="rolloverLoad('side-galleys','graphics/galleys-label-2.jpg','graphics/galleys-label-3.jpg');" src="graphics/galleys-label-3.jpg" vspace="0" width="120"></A><BR>
+ <A href="footnotes.html" onMouseOut="rolloverOff('side-footnotes');" onMouseOver="rolloverOn('side-footnotes');"><IMG alt="footnotes" border="0" height="12" hspace="0" name="side-footnotes" onLoad="rolloverLoad('side-footnotes','graphics/footnotes-label-2.jpg','graphics/footnotes-label-3.jpg');" src="graphics/footnotes-label-3.jpg" vspace="0" width="120"></A><BR>
+ <A href="keeps.html" onMouseOut="rolloverOff('side-keeps');" onMouseOver="rolloverOn('side-keeps');"><IMG alt="keeps" border="0" height="12" hspace="0" name="side-keeps" onLoad="rolloverLoad('side-keeps','graphics/keeps-label-2.jpg','graphics/keeps-label-3.jpg');" src="graphics/keeps-label-3.jpg" vspace="0" width="120"></A><BR>
+ <A href="spaces.html" onMouseOut="rolloverOff('side-spaces');" onMouseOver="rolloverOn('side-spaces');"><IMG alt="space-specifiers" border="0" height="12" hspace="0" name="side-spaces" onLoad="rolloverLoad('side-spaces','graphics/spaces-label-2.jpg','graphics/spaces-label-3.jpg');" src="graphics/spaces-label-3.jpg" vspace="0" width="120"></A><BR>
+ <IMG border="0" height="6" hspace="0" src="resources/separator.gif" vspace="0" width="120"><BR>
+ <A href="alt.properties.html" onMouseOut="rolloverOff('side-alt.properties');" onMouseOver="rolloverOn('side-alt.properties');"><IMG alt="alt.properties" border="0" height="12" hspace="0" name="side-alt.properties" onLoad="rolloverLoad('side-alt.properties','graphics/alt.properties-label-2.jpg','graphics/alt.properties-label-3.jpg');" src="graphics/alt.properties-label-3.jpg" vspace="0" width="120"></A><BR>
<A href="classes-overview.html" onMouseOut="rolloverOff('side-classes-overview');" onMouseOver="rolloverOn('side-classes-overview');"><IMG alt="Classes overview" border="0" height="12" hspace="0" name="side-classes-overview" onLoad="rolloverLoad('side-classes-overview','graphics/classes-overview-label-2.jpg','graphics/classes-overview-label-3.jpg');" src="graphics/classes-overview-label-3.jpg" vspace="0" width="120"></A><BR>
<IMG alt="Properties classes" border="0" height="12" hspace="0" src="graphics/properties-classes-label-1.jpg" vspace="0" width="120"><BR>
<A href="Properties.html" onMouseOut="rolloverOff('side-Properties');" onMouseOver="rolloverOn('side-Properties');"><IMG alt="Properties" border="0" height="12" hspace="0" name="side-Properties" onLoad="rolloverLoad('side-Properties','graphics/Properties-label-2.jpg','graphics/Properties-label-3.jpg');" src="graphics/Properties-label-3.jpg" vspace="0" width="120"></A><BR>
@@ -16,6 +22,9 @@
<A href="xml-parsing.html" onMouseOut="rolloverOff('side-xml-parsing');" onMouseOver="rolloverOn('side-xml-parsing');"><IMG alt="XML parsing" border="0" height="12" hspace="0" name="side-xml-parsing" onLoad="rolloverLoad('side-xml-parsing','graphics/xml-parsing-label-2.jpg','graphics/xml-parsing-label-3.jpg');" src="graphics/xml-parsing-label-3.jpg" vspace="0" width="120"></A><BR>
<IMG border="0" height="6" hspace="0" src="resources/separator.gif" vspace="0" width="120"><BR>
<A href="property-parsing.html" onMouseOut="rolloverOff('side-property-parsing');" onMouseOver="rolloverOn('side-property-parsing');"><IMG alt="Property parsing" border="0" height="12" hspace="0" name="side-property-parsing" onLoad="rolloverLoad('side-property-parsing','graphics/property-parsing-label-2.jpg','graphics/property-parsing-label-3.jpg');" src="graphics/property-parsing-label-3.jpg" vspace="0" width="120"></A><BR>
+ <IMG border="0" height="6" hspace="0" src="resources/separator.gif" vspace="0" width="120"><BR>
+ <A href="compound-properties.html" onMouseOut="rolloverOff('side-compound-properties');" onMouseOver="rolloverOn('side-compound-properties');"><IMG alt="Compound properties" border="0" height="12" hspace="0" name="side-compound-properties" onLoad="rolloverLoad('side-compound-properties','graphics/compound-properties-label-2.jpg','graphics/compound-properties-label-3.jpg');" src="graphics/compound-properties-label-3.jpg" vspace="0" width="120"></A><BR>
+ <A href="traits.html" onMouseOut="rolloverOff('side-traits');" onMouseOver="rolloverOn('side-traits');"><IMG alt="Traits" border="0" height="12" hspace="0" name="side-traits" onLoad="rolloverLoad('side-traits','graphics/traits-label-2.jpg','graphics/traits-label-3.jpg');" src="graphics/traits-label-3.jpg" vspace="0" width="120"></A><BR>
<IMG border="0" height="14" hspace="0" src="resources/close.gif" vspace="0" width="120"><BR></TD><TD align="left" valign="top" width="*"><TABLE border="0" cellpadding="3" cellspacing="0"><TR><TD><BR>
1.2 +10 -1 xml-site/targets/fop/design/alt.design/property-parsing.html
Index: property-parsing.html
===================================================================
RCS file: /home/cvs/xml-site/targets/fop/design/alt.design/property-parsing.html,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -r1.1 -r1.2
--- property-parsing.html 18 Mar 2002 08:50:02 -0000 1.1
+++ property-parsing.html 28 Apr 2002 14:44:10 -0000 1.2
@@ -3,7 +3,13 @@
<IMG border="0" height="6" hspace="0" src="resources/separator.gif" vspace="0" width="120"><BR>
<A href="../index.html" onMouseOut="rolloverOff('side-ext-6');" onMouseOver="rolloverOn('side-ext-6');"><IMG alt="NEW DESIGN" border="0" height="12" hspace="0" name="side-ext-6" onLoad="rolloverLoad('side-ext-6','graphics/ext-6-label-2.jpg','graphics/ext-6-label-3.jpg');" src="graphics/ext-6-label-3.jpg" vspace="0" width="120"></A><BR>
<IMG border="0" height="6" hspace="0" src="resources/separator.gif" vspace="0" width="120"><BR>
- <A href="index.html" onMouseOut="rolloverOff('side-index');" onMouseOver="rolloverOn('side-index');"><IMG alt="alt.properties" border="0" height="12" hspace="0" name="side-index" onLoad="rolloverLoad('side-index','graphics/index-label-2.jpg','graphics/index-label-3.jpg');" src="graphics/index-label-3.jpg" vspace="0" width="120"></A><BR>
+ <A href="index.html" onMouseOut="rolloverOff('side-index');" onMouseOver="rolloverOn('side-index');"><IMG alt="co-routines" border="0" height="12" hspace="0" name="side-index" onLoad="rolloverLoad('side-index','graphics/index-label-2.jpg','graphics/index-label-3.jpg');" src="graphics/index-label-3.jpg" vspace="0" width="120"></A><BR>
+ <A href="galleys.html" onMouseOut="rolloverOff('side-galleys');" onMouseOver="rolloverOn('side-galleys');"><IMG alt="galleys" border="0" height="12" hspace="0" name="side-galleys" onLoad="rolloverLoad('side-galleys','graphics/galleys-label-2.jpg','graphics/galleys-label-3.jpg');" src="graphics/galleys-label-3.jpg" vspace="0" width="120"></A><BR>
+ <A href="footnotes.html" onMouseOut="rolloverOff('side-footnotes');" onMouseOver="rolloverOn('side-footnotes');"><IMG alt="footnotes" border="0" height="12" hspace="0" name="side-footnotes" onLoad="rolloverLoad('side-footnotes','graphics/footnotes-label-2.jpg','graphics/footnotes-label-3.jpg');" src="graphics/footnotes-label-3.jpg" vspace="0" width="120"></A><BR>
+ <A href="keeps.html" onMouseOut="rolloverOff('side-keeps');" onMouseOver="rolloverOn('side-keeps');"><IMG alt="keeps" border="0" height="12" hspace="0" name="side-keeps" onLoad="rolloverLoad('side-keeps','graphics/keeps-label-2.jpg','graphics/keeps-label-3.jpg');" src="graphics/keeps-label-3.jpg" vspace="0" width="120"></A><BR>
+ <A href="spaces.html" onMouseOut="rolloverOff('side-spaces');" onMouseOver="rolloverOn('side-spaces');"><IMG alt="space-specifiers" border="0" height="12" hspace="0" name="side-spaces" onLoad="rolloverLoad('side-spaces','graphics/spaces-label-2.jpg','graphics/spaces-label-3.jpg');" src="graphics/spaces-label-3.jpg" vspace="0" width="120"></A><BR>
+ <IMG border="0" height="6" hspace="0" src="resources/separator.gif" vspace="0" width="120"><BR>
+ <A href="alt.properties.html" onMouseOut="rolloverOff('side-alt.properties');" onMouseOver="rolloverOn('side-alt.properties');"><IMG alt="alt.properties" border="0" height="12" hspace="0" name="side-alt.properties" onLoad="rolloverLoad('side-alt.properties','graphics/alt.properties-label-2.jpg','graphics/alt.properties-label-3.jpg');" src="graphics/alt.properties-label-3.jpg" vspace="0" width="120"></A><BR>
<A href="classes-overview.html" onMouseOut="rolloverOff('side-classes-overview');" onMouseOver="rolloverOn('side-classes-overview');"><IMG alt="Classes overview" border="0" height="12" hspace="0" name="side-classes-overview" onLoad="rolloverLoad('side-classes-overview','graphics/classes-overview-label-2.jpg','graphics/classes-overview-label-3.jpg');" src="graphics/classes-overview-label-3.jpg" vspace="0" width="120"></A><BR>
<A href="properties-classes.html" onMouseOut="rolloverOff('side-properties-classes');" onMouseOver="rolloverOn('side-properties-classes');"><IMG alt="Properties classes" border="0" height="12" hspace="0" name="side-properties-classes" onLoad="rolloverLoad('side-properties-classes','graphics/properties-classes-label-2.jpg','graphics/properties-classes-label-3.jpg');" src="graphics/properties-classes-label-3.jpg" vspace="0" width="120"></A><BR>
<A href="Properties.html" onMouseOut="rolloverOff('side-Properties');" onMouseOver="rolloverOn('side-Properties');"><IMG alt="Properties" border="0" height="12" hspace="0" name="side-Properties" onLoad="rolloverLoad('side-Properties','graphics/Properties-label-2.jpg','graphics/Properties-label-3.jpg');" src="graphics/Properties-label-3.jpg" vspace="0" width="120"></A><BR>
@@ -16,6 +22,9 @@
<A href="xml-parsing.html" onMouseOut="rolloverOff('side-xml-parsing');" onMouseOver="rolloverOn('side-xml-parsing');"><IMG alt="XML parsing" border="0" height="12" hspace="0" name="side-xml-parsing" onLoad="rolloverLoad('side-xml-parsing','graphics/xml-parsing-label-2.jpg','graphics/xml-parsing-label-3.jpg');" src="graphics/xml-parsing-label-3.jpg" vspace="0" width="120"></A><BR>
<IMG border="0" height="6" hspace="0" src="resources/separator.gif" vspace="0" width="120"><BR>
<IMG alt="Property parsing" border="0" height="12" hspace="0" src="graphics/property-parsing-label-1.jpg" vspace="0" width="120"><BR>
+ <IMG border="0" height="6" hspace="0" src="resources/separator.gif" vspace="0" width="120"><BR>
+ <A href="compound-properties.html" onMouseOut="rolloverOff('side-compound-properties');" onMouseOver="rolloverOn('side-compound-properties');"><IMG alt="Compound properties" border="0" height="12" hspace="0" name="side-compound-properties" onLoad="rolloverLoad('side-compound-properties','graphics/compound-properties-label-2.jpg','graphics/compound-properties-label-3.jpg');" src="graphics/compound-properties-label-3.jpg" vspace="0" width="120"></A><BR>
+ <A href="traits.html" onMouseOut="rolloverOff('side-traits');" onMouseOver="rolloverOn('side-traits');"><IMG alt="Traits" border="0" height="12" hspace="0" name="side-traits" onLoad="rolloverLoad('side-traits','graphics/traits-label-2.jpg','graphics/traits-label-3.jpg');" src="graphics/traits-label-3.jpg" vspace="0" width="120"></A><BR>
<IMG border="0" height="14" hspace="0" src="resources/close.gif" vspace="0" width="120"><BR></TD><TD align="left" valign="top" width="*"><TABLE border="0" cellpadding="3" cellspacing="0"><TR><TD><BR>
1.2 +11 -2 xml-site/targets/fop/design/alt.design/xml-parsing.html
Index: xml-parsing.html
===================================================================
RCS file: /home/cvs/xml-site/targets/fop/design/alt.design/xml-parsing.html,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -r1.1 -r1.2
--- xml-parsing.html 18 Mar 2002 08:50:02 -0000 1.1
+++ xml-parsing.html 28 Apr 2002 14:44:10 -0000 1.2
@@ -3,7 +3,13 @@
<IMG border="0" height="6" hspace="0" src="resources/separator.gif" vspace="0" width="120"><BR>
<A href="../index.html" onMouseOut="rolloverOff('side-ext-6');" onMouseOver="rolloverOn('side-ext-6');"><IMG alt="NEW DESIGN" border="0" height="12" hspace="0" name="side-ext-6" onLoad="rolloverLoad('side-ext-6','graphics/ext-6-label-2.jpg','graphics/ext-6-label-3.jpg');" src="graphics/ext-6-label-3.jpg" vspace="0" width="120"></A><BR>
<IMG border="0" height="6" hspace="0" src="resources/separator.gif" vspace="0" width="120"><BR>
- <A href="index.html" onMouseOut="rolloverOff('side-index');" onMouseOver="rolloverOn('side-index');"><IMG alt="alt.properties" border="0" height="12" hspace="0" name="side-index" onLoad="rolloverLoad('side-index','graphics/index-label-2.jpg','graphics/index-label-3.jpg');" src="graphics/index-label-3.jpg" vspace="0" width="120"></A><BR>
+ <A href="index.html" onMouseOut="rolloverOff('side-index');" onMouseOver="rolloverOn('side-index');"><IMG alt="co-routines" border="0" height="12" hspace="0" name="side-index" onLoad="rolloverLoad('side-index','graphics/index-label-2.jpg','graphics/index-label-3.jpg');" src="graphics/index-label-3.jpg" vspace="0" width="120"></A><BR>
+ <A href="galleys.html" onMouseOut="rolloverOff('side-galleys');" onMouseOver="rolloverOn('side-galleys');"><IMG alt="galleys" border="0" height="12" hspace="0" name="side-galleys" onLoad="rolloverLoad('side-galleys','graphics/galleys-label-2.jpg','graphics/galleys-label-3.jpg');" src="graphics/galleys-label-3.jpg" vspace="0" width="120"></A><BR>
+ <A href="footnotes.html" onMouseOut="rolloverOff('side-footnotes');" onMouseOver="rolloverOn('side-footnotes');"><IMG alt="footnotes" border="0" height="12" hspace="0" name="side-footnotes" onLoad="rolloverLoad('side-footnotes','graphics/footnotes-label-2.jpg','graphics/footnotes-label-3.jpg');" src="graphics/footnotes-label-3.jpg" vspace="0" width="120"></A><BR>
+ <A href="keeps.html" onMouseOut="rolloverOff('side-keeps');" onMouseOver="rolloverOn('side-keeps');"><IMG alt="keeps" border="0" height="12" hspace="0" name="side-keeps" onLoad="rolloverLoad('side-keeps','graphics/keeps-label-2.jpg','graphics/keeps-label-3.jpg');" src="graphics/keeps-label-3.jpg" vspace="0" width="120"></A><BR>
+ <A href="spaces.html" onMouseOut="rolloverOff('side-spaces');" onMouseOver="rolloverOn('side-spaces');"><IMG alt="space-specifiers" border="0" height="12" hspace="0" name="side-spaces" onLoad="rolloverLoad('side-spaces','graphics/spaces-label-2.jpg','graphics/spaces-label-3.jpg');" src="graphics/spaces-label-3.jpg" vspace="0" width="120"></A><BR>
+ <IMG border="0" height="6" hspace="0" src="resources/separator.gif" vspace="0" width="120"><BR>
+ <A href="alt.properties.html" onMouseOut="rolloverOff('side-alt.properties');" onMouseOver="rolloverOn('side-alt.properties');"><IMG alt="alt.properties" border="0" height="12" hspace="0" name="side-alt.properties" onLoad="rolloverLoad('side-alt.properties','graphics/alt.properties-label-2.jpg','graphics/alt.properties-label-3.jpg');" src="graphics/alt.properties-label-3.jpg" vspace="0" width="120"></A><BR>
<A href="classes-overview.html" onMouseOut="rolloverOff('side-classes-overview');" onMouseOver="rolloverOn('side-classes-overview');"><IMG alt="Classes overview" border="0" height="12" hspace="0" name="side-classes-overview" onLoad="rolloverLoad('side-classes-overview','graphics/classes-overview-label-2.jpg','graphics/classes-overview-label-3.jpg');" src="graphics/classes-overview-label-3.jpg" vspace="0" width="120"></A><BR>
<A href="properties-classes.html" onMouseOut="rolloverOff('side-properties-classes');" onMouseOver="rolloverOn('side-properties-classes');"><IMG alt="Properties classes" border="0" height="12" hspace="0" name="side-properties-classes" onLoad="rolloverLoad('side-properties-classes','graphics/properties-classes-label-2.jpg','graphics/properties-classes-label-3.jpg');" src="graphics/properties-classes-label-3.jpg" vspace="0" width="120"></A><BR>
<A href="Properties.html" onMouseOut="rolloverOff('side-Properties');" onMouseOver="rolloverOn('side-Properties');"><IMG alt="Properties" border="0" height="12" hspace="0" name="side-Properties" onLoad="rolloverLoad('side-Properties','graphics/Properties-label-2.jpg','graphics/Properties-label-3.jpg');" src="graphics/Properties-label-3.jpg" vspace="0" width="120"></A><BR>
@@ -16,6 +22,9 @@
<IMG alt="XML parsing" border="0" height="12" hspace="0" src="graphics/xml-parsing-label-1.jpg" vspace="0" width="120"><BR>
<IMG border="0" height="6" hspace="0" src="resources/separator.gif" vspace="0" width="120"><BR>
<A href="property-parsing.html" onMouseOut="rolloverOff('side-property-parsing');" onMouseOver="rolloverOn('side-property-parsing');"><IMG alt="Property parsing" border="0" height="12" hspace="0" name="side-property-parsing" onLoad="rolloverLoad('side-property-parsing','graphics/property-parsing-label-2.jpg','graphics/property-parsing-label-3.jpg');" src="graphics/property-parsing-label-3.jpg" vspace="0" width="120"></A><BR>
+ <IMG border="0" height="6" hspace="0" src="resources/separator.gif" vspace="0" width="120"><BR>
+ <A href="compound-properties.html" onMouseOut="rolloverOff('side-compound-properties');" onMouseOver="rolloverOn('side-compound-properties');"><IMG alt="Compound properties" border="0" height="12" hspace="0" name="side-compound-properties" onLoad="rolloverLoad('side-compound-properties','graphics/compound-properties-label-2.jpg','graphics/compound-properties-label-3.jpg');" src="graphics/compound-properties-label-3.jpg" vspace="0" width="120"></A><BR>
+ <A href="traits.html" onMouseOut="rolloverOff('side-traits');" onMouseOver="rolloverOn('side-traits');"><IMG alt="Traits" border="0" height="12" hspace="0" name="side-traits" onLoad="rolloverLoad('side-traits','graphics/traits-label-2.jpg','graphics/traits-label-3.jpg');" src="graphics/traits-label-3.jpg" vspace="0" width="120"></A><BR>
<IMG border="0" height="14" hspace="0" src="resources/close.gif" vspace="0" width="120"><BR></TD><TD align="left" valign="top" width="*"><TABLE border="0" cellpadding="3" cellspacing="0"><TR><TD><BR>
@@ -50,7 +59,7 @@
</P>
<P align="center"><IMG alt="SAX parsing schematic" border="0" hspace="4" src="SAXParsing.png" vspace="4"></P>
<P align="left">
- In the process of parsing, the heirarchical structure of the
+ In the process of parsing, the hierarchical structure of the
original FO tree is flattened into a number of streams of
events of the same type which are reported in the sequence
in which they are encountered. Apart from that, the API
1.1 xml-site/targets/fop/design/alt.design/alt.properties.html
Index: alt.properties.html
===================================================================
<HTML><HEAD><SCRIPT language="JavaScript" src="resources/script.js" type="text/javascript"></SCRIPT><TITLE>Implementing Properties</TITLE></HEAD><BODY alink="#cc0000" bgcolor="#ffffff" leftmargin="4" link="#039acc" marginheight="4" marginwidth="4" text="#000000" topmargin="4" vlink="#0086b2"><TABLE border="0" cellpadding="0" cellspacing="0" width="100%"><TR><TD align="left" height="60" rowspan="3" valign="top" width="135"><IMG border="0" height="60" hspace="0" src="resources/logo.gif" vspace="0" width="135"></TD><TD align="left" background="resources/line.gif" colspan="2" height="5" valign="top" width="100%"><IMG align="left" border="0" height="5" hspace="0" src="resources/line.gif" vspace="0" width="1"></TD><TD align="left" height="60" rowspan="3" valign="top" width="29"><IMG border="0" height="60" hspace="0" src="resources/right.gif" vspace="0" width="29"></TD></TR><TR><TD align="left" bgcolor="#0086b2" colspan="2" height="35" valign="top" width="100%"><IMG align="right" alt="" border="0" height="35" hspace="0" src="graphics/alt.properties-header.jpg" vspace="0" width="456"></TD></TR><TR><TD align="left" background="resources/bottom.gif" bgcolor="#0086b2" height="20" valign="top" width="100%"><IMG align="left" border="0" height="20" hspace="0" src="resources/bottom.gif" vspace="0" width="3"></TD><TD align="right" background="resources/bottom.gif" bgcolor="#0086b2" height="20" valign="top" width="288"><TABLE border="0" cellpadding="0" cellspacing="0" width="288"><TR><TD align="left" height="20" valign="top" width="96"><A href="http://xml.apache.org/" onMouseOut="rolloverOff('xml');" onMouseOver="rolloverOn('xml');" target="new"><IMG alt="http://xml.apache.org/" border="0" height="20" hspace="0" name="xml" onLoad="rolloverLoad('xml','resources/button-xml-hi.gif','resources/button-xml-lo.gif');" src="resources/button-xml-lo.gif" vspace="0" width="96"></A></TD><TD align="left" height="20" valign="top" width="96"><A href="http://www.apache.org/" onMouseOut="rolloverOff('asf');" onMouseOver="rolloverOn('asf');" target="new"><IMG alt="http://www.apache.org/" border="0" height="20" hspace="0" name="asf" onLoad="rolloverLoad('asf','resources/button-asf-hi.gif','resources/button-asf-lo.gif');" src="resources/button-asf-lo.gif" vspace="0" width="96"></A></TD><TD align="left" height="20" valign="top" width="96"><A href="http://www.w3.org/" onMouseOut="rolloverOff('w3c');" onMouseOver="rolloverOn('w3c');" target="new"><IMG alt="http://www.w3.org/" border="0" height="20" hspace="0" name="w3c" onLoad="rolloverLoad('w3c','resources/button-w3c-hi.gif','resources/button-w3c-lo.gif');" src="resources/button-w3c-lo.gif" vspace="0" width="96"></A></TD></TR></TABLE></TD></TR></TABLE><TABLE border="0" cellpadding="0" cellspacing="0" width="100%"><TR><TD align="left" valign="top" width="120"><IMG border="0" height="14" hspace="0" src="resources/join.gif" vspace="0" width="120"><BR>
<A href="http://xml.apache.org/fop/" onMouseOut="rolloverOff('side-ext-2');" onMouseOver="rolloverOn('side-ext-2');"><IMG alt="About FOP" border="0" height="12" hspace="0" name="side-ext-2" onLoad="rolloverLoad('side-ext-2','graphics/ext-2-label-2.jpg','graphics/ext-2-label-3.jpg');" src="graphics/ext-2-label-3.jpg" vspace="0" width="120"></A><BR>
<IMG border="0" height="6" hspace="0" src="resources/separator.gif" vspace="0" width="120"><BR>
<A href="../index.html" onMouseOut="rolloverOff('side-ext-6');" onMouseOver="rolloverOn('side-ext-6');"><IMG alt="NEW DESIGN" border="0" height="12" hspace="0" name="side-ext-6" onLoad="rolloverLoad('side-ext-6','graphics/ext-6-label-2.jpg','graphics/ext-6-label-3.jpg');" src="graphics/ext-6-label-3.jpg" vspace="0" width="120"></A><BR>
<IMG border="0" height="6" hspace="0" src="resources/separator.gif" vspace="0" width="120"><BR>
<A href="index.html" onMouseOut="rolloverOff('side-index');" onMouseOver="rolloverOn('side-index');"><IMG alt="co-routines" border="0" height="12" hspace="0" name="side-index" onLoad="rolloverLoad('side-index','graphics/index-label-2.jpg','graphics/index-label-3.jpg');" src="graphics/index-label-3.jpg" vspace="0" width="120"></A><BR>
<A href="galleys.html" onMouseOut="rolloverOff('side-galleys');" onMouseOver="rolloverOn('side-galleys');"><IMG alt="galleys" border="0" height="12" hspace="0" name="side-galleys" onLoad="rolloverLoad('side-galleys','graphics/galleys-label-2.jpg','graphics/galleys-label-3.jpg');" src="graphics/galleys-label-3.jpg" vspace="0" width="120"></A><BR>
<A href="footnotes.html" onMouseOut="rolloverOff('side-footnotes');" onMouseOver="rolloverOn('side-footnotes');"><IMG alt="footnotes" border="0" height="12" hspace="0" name="side-footnotes" onLoad="rolloverLoad('side-footnotes','graphics/footnotes-label-2.jpg','graphics/footnotes-label-3.jpg');" src="graphics/footnotes-label-3.jpg" vspace="0" width="120"></A><BR>
<A href="keeps.html" onMouseOut="rolloverOff('side-keeps');" onMouseOver="rolloverOn('side-keeps');"><IMG alt="keeps" border="0" height="12" hspace="0" name="side-keeps" onLoad="rolloverLoad('side-keeps','graphics/keeps-label-2.jpg','graphics/keeps-label-3.jpg');" src="graphics/keeps-label-3.jpg" vspace="0" width="120"></A><BR>
<A href="spaces.html" onMouseOut="rolloverOff('side-spaces');" onMouseOver="rolloverOn('side-spaces');"><IMG alt="space-specifiers" border="0" height="12" hspace="0" name="side-spaces" onLoad="rolloverLoad('side-spaces','graphics/spaces-label-2.jpg','graphics/spaces-label-3.jpg');" src="graphics/spaces-label-3.jpg" vspace="0" width="120"></A><BR>
<IMG border="0" height="6" hspace="0" src="resources/separator.gif" vspace="0" width="120"><BR>
<IMG alt="alt.properties" border="0" height="12" hspace="0" src="graphics/alt.properties-label-1.jpg" vspace="0" width="120"><BR>
<A href="classes-overview.html" onMouseOut="rolloverOff('side-classes-overview');" onMouseOver="rolloverOn('side-classes-overview');"><IMG alt="Classes overview" border="0" height="12" hspace="0" name="side-classes-overview" onLoad="rolloverLoad('side-classes-overview','graphics/classes-overview-label-2.jpg','graphics/classes-overview-label-3.jpg');" src="graphics/classes-overview-label-3.jpg" vspace="0" width="120"></A><BR>
<A href="properties-classes.html" onMouseOut="rolloverOff('side-properties-classes');" onMouseOver="rolloverOn('side-properties-classes');"><IMG alt="Properties classes" border="0" height="12" hspace="0" name="side-properties-classes" onLoad="rolloverLoad('side-properties-classes','graphics/properties-classes-label-2.jpg','graphics/properties-classes-label-3.jpg');" src="graphics/properties-classes-label-3.jpg" vspace="0" width="120"></A><BR>
<A href="Properties.html" onMouseOut="rolloverOff('side-Properties');" onMouseOver="rolloverOn('side-Properties');"><IMG alt="Properties" border="0" height="12" hspace="0" name="side-Properties" onLoad="rolloverLoad('side-Properties','graphics/Properties-label-2.jpg','graphics/Properties-label-3.jpg');" src="graphics/Properties-label-3.jpg" vspace="0" width="120"></A><BR>
<A href="PropertyConsts.html" onMouseOut="rolloverOff('side-PropertyConsts');" onMouseOver="rolloverOn('side-PropertyConsts');"><IMG alt="PropertyConsts" border="0" height="12" hspace="0" name="side-PropertyConsts" onLoad="rolloverLoad('side-PropertyConsts','graphics/PropertyConsts-label-2.jpg','graphics/PropertyConsts-label-3.jpg');" src="graphics/PropertyConsts-label-3.jpg" vspace="0" width="120"></A><BR>
<A href="PropNames.html" onMouseOut="rolloverOff('side-PropNames');" onMouseOver="rolloverOn('side-PropNames');"><IMG alt="PropNames" border="0" height="12" hspace="0" name="side-PropNames" onLoad="rolloverLoad('side-PropNames','graphics/PropNames-label-2.jpg','graphics/PropNames-label-3.jpg');" src="graphics/PropNames-label-3.jpg" vspace="0" width="120"></A><BR>
<A href="AbsolutePosition.html" onMouseOut="rolloverOff('side-AbsolutePosition');" onMouseOver="rolloverOn('side-AbsolutePosition');"><IMG alt="AbsolutePosition" border="0" height="12" hspace="0" name="side-AbsolutePosition" onLoad="rolloverLoad('side-AbsolutePosition','graphics/AbsolutePosition-label-2.jpg','graphics/AbsolutePosition-label-3.jpg');" src="graphics/AbsolutePosition-label-3.jpg" vspace="0" width="120"></A><BR>
<A href="VerticalAlign.html" onMouseOut="rolloverOff('side-VerticalAlign');" onMouseOver="rolloverOn('side-VerticalAlign');"><IMG alt="VerticalAlign" border="0" height="12" hspace="0" name="side-VerticalAlign" onLoad="rolloverLoad('side-VerticalAlign','graphics/VerticalAlign-label-2.jpg','graphics/VerticalAlign-label-3.jpg');" src="graphics/VerticalAlign-label-3.jpg" vspace="0" width="120"></A><BR>
<A href="BorderCommonStyle.html" onMouseOut="rolloverOff('side-BorderCommonStyle');" onMouseOver="rolloverOn('side-BorderCommonStyle');"><IMG alt="BorderCommonStyle" border="0" height="12" hspace="0" name="side-BorderCommonStyle" onLoad="rolloverLoad('side-BorderCommonStyle','graphics/BorderCommonStyle-label-2.jpg','graphics/BorderCommonStyle-label-3.jpg');" src="graphics/BorderCommonStyle-label-3.jpg" vspace="0" width="120"></A><BR>
<IMG border="0" height="6" hspace="0" src="resources/separator.gif" vspace="0" width="120"><BR>
<A href="xml-parsing.html" onMouseOut="rolloverOff('side-xml-parsing');" onMouseOver="rolloverOn('side-xml-parsing');"><IMG alt="XML parsing" border="0" height="12" hspace="0" name="side-xml-parsing" onLoad="rolloverLoad('side-xml-parsing','graphics/xml-parsing-label-2.jpg','graphics/xml-parsing-label-3.jpg');" src="graphics/xml-parsing-label-3.jpg" vspace="0" width="120"></A><BR>
<IMG border="0" height="6" hspace="0" src="resources/separator.gif" vspace="0" width="120"><BR>
<A href="property-parsing.html" onMouseOut="rolloverOff('side-property-parsing');" onMouseOver="rolloverOn('side-property-parsing');"><IMG alt="Property parsing" border="0" height="12" hspace="0" name="side-property-parsing" onLoad="rolloverLoad('side-property-parsing','graphics/property-parsing-label-2.jpg','graphics/property-parsing-label-3.jpg');" src="graphics/property-parsing-label-3.jpg" vspace="0" width="120"></A><BR>
<IMG border="0" height="6" hspace="0" src="resources/separator.gif" vspace="0" width="120"><BR>
<A href="compound-properties.html" onMouseOut="rolloverOff('side-compound-properties');" onMouseOver="rolloverOn('side-compound-properties');"><IMG alt="Compound properties" border="0" height="12" hspace="0" name="side-compound-properties" onLoad="rolloverLoad('side-compound-properties','graphics/compound-properties-label-2.jpg','graphics/compound-properties-label-3.jpg');" src="graphics/compound-properties-label-3.jpg" vspace="0" width="120"></A><BR>
<A href="traits.html" onMouseOut="rolloverOff('side-traits');" onMouseOver="rolloverOn('side-traits');"><IMG alt="Traits" border="0" height="12" hspace="0" name="side-traits" onLoad="rolloverLoad('side-traits','graphics/traits-label-2.jpg','graphics/traits-label-3.jpg');" src="graphics/traits-label-3.jpg" vspace="0" width="120"></A><BR>
<IMG border="0" height="14" hspace="0" src="resources/close.gif" vspace="0" width="120"><BR></TD><TD align="left" valign="top" width="*"><TABLE border="0" cellpadding="3" cellspacing="0"><TR><TD><BR>
<DIV align="right"><TABLE border="0" cellpadding="0" cellspacing="0" width="98%"><TR><TD align="right" height="7" valign="bottom" width="9"><IMG border="0" height="7" hspace="0" src="resources/bar-top-left.gif" vspace="0" width="9"></TD><TD background="resources/bar-border-top.gif"><IMG border="0" height="5" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD><TD align="left" height="7" valign="bottom" width="9"><IMG border="0" height="7" hspace="0" src="resources/bar-top-right.gif" vspace="0" width="9"></TD></TR><TR><TD background="resources/bar-border-left.gif" width="9"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="9"></TD><TD bgcolor="#0086b2" width="100%"><FONT color="#ffffff" face="arial,helvetica,sanserif" size="+1"><IMG border="0" height="5" hspace="0" src="resources/void.gif" vspace="0" width="5"><B>An alternative properties implementation</B></FONT></TD><TD background="resources/bar-border-right.gif" width="9"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="9"></TD></TR><TR><TD align="right" height="12" valign="top" width="9"><IMG border="0" height="12" hspace="0" src="resources/bar-bottom-left.gif" vspace="0" width="9"></TD><TD background="resources/bar-border-bottom.gif"><IMG border="0" height="12" hspace="0" src="resources/void.gif" vspace="0"></TD><TD align="left" height="12" valign="top" width="9"><IMG border="0" height="12" hspace="0" src="resources/bar-bottom-right.gif" vspace="0" width="9"></TD></TR></TABLE><TABLE border="0" cellpadding="0" cellspacing="0" width="98%"><TR><TD><FONT color="#000000" face="arial,helvetica,sanserif">
<P><TABLE border="0" cellpadding="0" cellspacing="3" width="100%"><TR><TD valign="top" width="28"><IMG alt="Note" border="0" height="29" hspace="0" src="resources/note.gif" vspace="0" width="28"></TD><TD valign="top"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1"><I>
The following discussion focusses on the relationship between
Flow Objects in the Flow Object tree, and properties. There
is no (or only passing) discussion of the relationship between
properties and traits, and by extension, between properties
and the Area tree. The discussion is illustrated with some
pseudo-UML diagrams.
</I></FONT></TD></TR></TABLE></P>
<P align="left">
Property handling is complex and expensive. Varying numbers of
properties apply to individual Flow Objects
<B>(FOs)</B> in the <B>FO
tree </B> but any property may effectively be
assigned a value on any element of the tree. If that property
is inheritable, its defined value will then be available to
any children of the defining FO.
</P>
<P><TABLE border="0" cellpadding="0" cellspacing="3" width="100%"><TR><TD valign="top" width="28"><IMG alt="Note" border="0" height="29" hspace="0" src="resources/note.gif" vspace="0" width="28"></TD><TD valign="top"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1"><I>
<I>(XSL 1.0 Rec)</I> <B>5.1.4 Inheritance</B>
...The inheritable properties can be placed on any formatting
object.
</I></FONT></TD></TR></TABLE></P>
<P align="left">
Even if the value is not inheritable, it may be accessed by
its children through the <CODE><FONT face="courier, monospaced">inherit</FONT></CODE> keyword or the
<CODE><FONT face="courier, monospaced">from-parent()</FONT></CODE> core function, and potentially by
any of its descendents through the
<CODE><FONT face="courier, monospaced">from-nearest-specified-value()</FONT></CODE> core function.
</P>
<P align="left">
In addition to the assigned values of properties, almost every
property has an <B>initial value</B> which is used
when no value has been assigned.
</P>
<DIV align="right"><TABLE border="0" cellpadding="0" cellspacing="0" width="95%"><TR><TD align="right" height="7" valign="bottom" width="9"><IMG border="0" height="7" hspace="0" src="resources/bar-top-left.gif" vspace="0" width="9"></TD><TD background="resources/bar-border-top.gif"><IMG border="0" height="5" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD><TD align="left" height="7" valign="bottom" width="9"><IMG border="0" height="7" hspace="0" src="resources/bar-top-right.gif" vspace="0" width="9"></TD></TR><TR><TD background="resources/bar-border-left.gif" width="9"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="9"></TD><TD bgcolor="#0086b2" width="100%"><FONT color="#ffffff" face="arial,helvetica,sanserif"><IMG border="0" height="5" hspace="0" src="resources/void.gif" vspace="0" width="5"><B>The history problem</B></FONT></TD><TD background="resources/bar-border-right.gif" width="9"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="9"></TD></TR><TR><TD align="right" height="12" valign="top" width="9"><IMG border="0" height="12" hspace="0" src="resources/bar-bottom-left.gif" vspace="0" width="9"></TD><TD background="resources/bar-border-bottom.gif"><IMG border="0" height="12" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD><TD align="left" height="12" valign="top" width="9"><IMG border="0" height="12" hspace="0" src="resources/bar-bottom-right.gif" vspace="0" width="9"></TD></TR></TABLE><TABLE border="0" cellpadding="0" cellspacing="0" width="95%"><TR><TD><FONT color="#000000" face="arial,helvetica,sanserif">
<P align="left">
The difficulty and expense of handling properties comes from
this univeral inheritance possibility. The list of properties
which are assigned values on any particular <I>FO</I>
element will not generally be large, but a current value is
required for each property which applies to the <I>FO</I>
being processed.
</P>
<P align="left">
The environment from which these values may be selected
includes, for each <I>FO</I>, for each applicable property,
the value assigned on this <I>FO</I>, the value which
applied to the parent of this <I>FO</I>, the nearest value
specified on an ancestor of this element, and the initial
value of the property.
</P>
</FONT></TD></TR></TABLE></DIV><BR>
<DIV align="right"><TABLE border="0" cellpadding="0" cellspacing="0" width="95%"><TR><TD align="right" height="7" valign="bottom" width="9"><IMG border="0" height="7" hspace="0" src="resources/bar-top-left.gif" vspace="0" width="9"></TD><TD background="resources/bar-border-top.gif"><IMG border="0" height="5" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD><TD align="left" height="7" valign="bottom" width="9"><IMG border="0" height="7" hspace="0" src="resources/bar-top-right.gif" vspace="0" width="9"></TD></TR><TR><TD background="resources/bar-border-left.gif" width="9"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="9"></TD><TD bgcolor="#0086b2" width="100%"><FONT color="#ffffff" face="arial,helvetica,sanserif"><IMG border="0" height="5" hspace="0" src="resources/void.gif" vspace="0" width="5"><B>Data requirement and structure</B></FONT></TD><TD background="resources/bar-border-right.gif" width="9"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="9"></TD></TR><TR><TD align="right" height="12" valign="top" width="9"><IMG border="0" height="12" hspace="0" src="resources/bar-bottom-left.gif" vspace="0" width="9"></TD><TD background="resources/bar-border-bottom.gif"><IMG border="0" height="12" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD><TD align="left" height="12" valign="top" width="9"><IMG border="0" height="12" hspace="0" src="resources/bar-bottom-right.gif" vspace="0" width="9"></TD></TR></TABLE><TABLE border="0" cellpadding="0" cellspacing="0" width="95%"><TR><TD><FONT color="#000000" face="arial,helvetica,sanserif">
<P align="left">
This determines the minimum set of properties and associated
property value assignments that is necessary for the
processing of any individual <I>FO</I>. Implicit in this
set is the set of properties and associated values,
effective on the current <I>FO</I>, that were assigned on
that <I>FO</I>.
</P>
<P align="left">
This minimum requirement - the initial value, the
nearest ancestor specified value, the parent computed value
and the value assigned to the current element -
suggests a stack implementation.
</P>
</FONT></TD></TR></TABLE></DIV><BR>
<DIV align="right"><TABLE border="0" cellpadding="0" cellspacing="0" width="95%"><TR><TD align="right" height="7" valign="bottom" width="9"><IMG border="0" height="7" hspace="0" src="resources/bar-top-left.gif" vspace="0" width="9"></TD><TD background="resources/bar-border-top.gif"><IMG border="0" height="5" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD><TD align="left" height="7" valign="bottom" width="9"><IMG border="0" height="7" hspace="0" src="resources/bar-top-right.gif" vspace="0" width="9"></TD></TR><TR><TD background="resources/bar-border-left.gif" width="9"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="9"></TD><TD bgcolor="#0086b2" width="100%"><FONT color="#ffffff" face="arial,helvetica,sanserif"><IMG border="0" height="5" hspace="0" src="resources/void.gif" vspace="0" width="5"><B>Stack considerations</B></FONT></TD><TD background="resources/bar-border-right.gif" width="9"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="9"></TD></TR><TR><TD align="right" height="12" valign="top" width="9"><IMG border="0" height="12" hspace="0" src="resources/bar-bottom-left.gif" vspace="0" width="9"></TD><TD background="resources/bar-border-bottom.gif"><IMG border="0" height="12" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD><TD align="left" height="12" valign="top" width="9"><IMG border="0" height="12" hspace="0" src="resources/bar-bottom-right.gif" vspace="0" width="9"></TD></TR></TABLE><TABLE border="0" cellpadding="0" cellspacing="0" width="95%"><TR><TD><FONT color="#000000" face="arial,helvetica,sanserif">
<P align="left">
One possibility is to push to the stack only a minimal set
of required elements. When a value is assigned, the
relevant form or forms of that value (specified, computed,
actual) are pushed onto the stack. As long as each
<I>FO</I> maintains a list of the properties which were
assigned from it, the value can be popped when the focus of
FO processing retreats back up the <I>FO</I> tree.
</P>
<P align="left">
The complication is that, for elements which are not
automatically inherited, when an <I>FO</I> is encountered
which does <B>not</B> assign a value to the
property, the initial value must either be already at the
top of the stack or be pushed onto the stack.
</P>
<P align="left">
As a first approach, the simplest procedure may be to push a
current value onto the stack for every element - initial
values for non-inherited properties and the parental value
otherwise. Then perform any processing of assigned values.
This simplifies program logic at what is hopefully a small
cost in memory and processing time. It may be tuned in a
later iteration.
</P>
<DIV align="right"><TABLE border="0" cellpadding="0" cellspacing="0" width="90%"><TR><TD align="right" height="7" valign="bottom" width="9"><IMG border="0" height="7" hspace="0" src="resources/bar-top-left.gif" vspace="0" width="9"></TD><TD background="resources/bar-border-top.gif"><IMG border="0" height="5" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD><TD align="left" height="7" valign="bottom" width="9"><IMG border="0" height="7" hspace="0" src="resources/bar-top-right.gif" vspace="0" width="9"></TD></TR><TR><TD background="resources/bar-border-left.gif" width="9"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="9"></TD><TD bgcolor="#0086b2" width="100%"><FONT color="#ffffff" face="arial,helvetica,sanserif" size="-1"><IMG border="0" height="5" hspace="0" src="resources/void.gif" vspace="0" width="5"><B>Stack implementation</B></FONT></TD><TD background="resources/bar-border-right.gif" width="9"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="9"></TD></TR><TR><TD align="right" height="12" valign="top" width="9"><IMG border="0" height="12" hspace="0" src="resources/bar-bottom-left.gif" vspace="0" width="9"></TD><TD background="resources/bar-border-bottom.gif"><IMG border="0" height="12" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD><TD align="left" height="12" valign="top" width="9"><IMG border="0" height="12" hspace="0" src="resources/bar-bottom-right.gif" vspace="0" width="9"></TD></TR></TABLE><TABLE border="0" cellpadding="0" cellspacing="0" width="90%"><TR><TD><FONT color="#000000" face="arial,helvetica,sanserif">
<P align="left">
Initial attempts at this implementation have used
<CODE><FONT face="courier, monospaced">LinkedList</FONT></CODE>s as the stacks, on the assumption
that
</P>
<UL>
<LI>random access would not be required</LI>
<LI>
pushing and popping of list elements requires nearly
constant (low) time
</LI>
<LI> no penalty for first addition to an empty list</LI>
<LI>efficient access to both bottom and top of stack</LI>
</UL>
<P align="left">
However, it may be required to perform stack access
operations from an arbitrary place on the stack, in which
case it would probably be more efficient to use
<CODE><FONT face="courier, monospaced">ArrayList</FONT></CODE>s instead.
</P>
</FONT></TD></TR></TABLE></DIV><BR>
</FONT></TD></TR></TABLE></DIV><BR>
<DIV align="right"><TABLE border="0" cellpadding="0" cellspacing="0" width="95%"><TR><TD align="right" height="7" valign="bottom" width="9"><IMG border="0" height="7" hspace="0" src="resources/bar-top-left.gif" vspace="0" width="9"></TD><TD background="resources/bar-border-top.gif"><IMG border="0" height="5" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD><TD align="left" height="7" valign="bottom" width="9"><IMG border="0" height="7" hspace="0" src="resources/bar-top-right.gif" vspace="0" width="9"></TD></TR><TR><TD background="resources/bar-border-left.gif" width="9"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="9"></TD><TD bgcolor="#0086b2" width="100%"><FONT color="#ffffff" face="arial,helvetica,sanserif"><IMG border="0" height="5" hspace="0" src="resources/void.gif" vspace="0" width="5"><B>Class vs instance</B></FONT></TD><TD background="resources/bar-border-right.gif" width="9"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="9"></TD></TR><TR><TD align="right" height="12" valign="top" width="9"><IMG border="0" height="12" hspace="0" src="resources/bar-bottom-left.gif" vspace="0" width="9"></TD><TD background="resources/bar-border-bottom.gif"><IMG border="0" height="12" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD><TD align="left" height="12" valign="top" width="9"><IMG border="0" height="12" hspace="0" src="resources/bar-bottom-right.gif" vspace="0" width="9"></TD></TR></TABLE><TABLE border="0" cellpadding="0" cellspacing="0" width="95%"><TR><TD><FONT color="#000000" face="arial,helvetica,sanserif">
<P align="left">
An individual stack would contain values for a particular
property, and the context of the stack is the property class
as a whole. The property instances would be represented by
the individual values on the stack. If properties are to be
represented as instantiations of the class, the stack
entries would presumably be references to, or at least
referenced from, individual property objects. However, the
most important information about individual property
instances is the value assigned, and the relationship of
this property object to its ancestors and its descendents.
Other information would include the ownership of a property
instance by a particular <I>FO</I>, and, in the other
direction, the membership of the property in the set of
properties for which an <I>FO</I> has defined values.
</P>
<P align="left">
In the presence of a stack, however, none of this required
information mandates the instantiation of properties. All
of the information mentioned so far can be effectively
represented by a stack position and a link to an
<I>FO</I>. If the property stack is maintained in
parallel with a stack of <I>FOs</I>, even that link is
implicit in the stack position.
</P>
</FONT></TD></TR></TABLE></DIV><BR>
<P align="left">
<B>Next:</B> <A href="classes-overview.html">property classes overview.</A>
</P>
</FONT></TD></TR></TABLE></DIV><BR>
</TD></TR></TABLE></TD></TR></TABLE><BR><TABLE border="0" cellpadding="0" cellspacing="0" width="100%"><TR><TD bgcolor="#0086b2"><IMG height="1" src="images/dot.gif" width="1"></TD></TR><TR><TD align="center"><FONT color="#0086b2" face="arial,helvetica,sanserif" size="-1"><I>
Copyright © 2001-2002 The Apache Software Foundation.
All Rights Reserved.
</I></FONT></TD></TR></TABLE></BODY></HTML>
1.1 xml-site/targets/fop/design/alt.design/compound-properties.html
Index: compound-properties.html
===================================================================
<HTML><HEAD><SCRIPT language="JavaScript" src="resources/script.js" type="text/javascript"></SCRIPT><TITLE>Compound properties</TITLE></HEAD><BODY alink="#cc0000" bgcolor="#ffffff" leftmargin="4" link="#039acc" marginheight="4" marginwidth="4" text="#000000" topmargin="4" vlink="#0086b2"><TABLE border="0" cellpadding="0" cellspacing="0" width="100%"><TR><TD align="left" height="60" rowspan="3" valign="top" width="135"><IMG border="0" height="60" hspace="0" src="resources/logo.gif" vspace="0" width="135"></TD><TD align="left" background="resources/line.gif" colspan="2" height="5" valign="top" width="100%"><IMG align="left" border="0" height="5" hspace="0" src="resources/line.gif" vspace="0" width="1"></TD><TD align="left" height="60" rowspan="3" valign="top" width="29"><IMG border="0" height="60" hspace="0" src="resources/right.gif" vspace="0" width="29"></TD></TR><TR><TD align="left" bgcolor="#0086b2" colspan="2" height="35" valign="top" width="100%"><IMG align="right" alt="" border="0" height="35" hspace="0" src="graphics/compound-properties-header.jpg" vspace="0" width="456"></TD></TR><TR><TD align="left" background="resources/bottom.gif" bgcolor="#0086b2" height="20" valign="top" width="100%"><IMG align="left" border="0" height="20" hspace="0" src="resources/bottom.gif" vspace="0" width="3"></TD><TD align="right" background="resources/bottom.gif" bgcolor="#0086b2" height="20" valign="top" width="288"><TABLE border="0" cellpadding="0" cellspacing="0" width="288"><TR><TD align="left" height="20" valign="top" width="96"><A href="http://xml.apache.org/" onMouseOut="rolloverOff('xml');" onMouseOver="rolloverOn('xml');" target="new"><IMG alt="http://xml.apache.org/" border="0" height="20" hspace="0" name="xml" onLoad="rolloverLoad('xml','resources/button-xml-hi.gif','resources/button-xml-lo.gif');" src="resources/button-xml-lo.gif" vspace="0" width="96"></A></TD><TD align="left" height="20" valign="top" width="96"><A href="http://www.apache.org/" onMouseOut="rolloverOff('asf');" onMouseOver="rolloverOn('asf');" target="new"><IMG alt="http://www.apache.org/" border="0" height="20" hspace="0" name="asf" onLoad="rolloverLoad('asf','resources/button-asf-hi.gif','resources/button-asf-lo.gif');" src="resources/button-asf-lo.gif" vspace="0" width="96"></A></TD><TD align="left" height="20" valign="top" width="96"><A href="http://www.w3.org/" onMouseOut="rolloverOff('w3c');" onMouseOver="rolloverOn('w3c');" target="new"><IMG alt="http://www.w3.org/" border="0" height="20" hspace="0" name="w3c" onLoad="rolloverLoad('w3c','resources/button-w3c-hi.gif','resources/button-w3c-lo.gif');" src="resources/button-w3c-lo.gif" vspace="0" width="96"></A></TD></TR></TABLE></TD></TR></TABLE><TABLE border="0" cellpadding="0" cellspacing="0" width="100%"><TR><TD align="left" valign="top" width="120"><IMG border="0" height="14" hspace="0" src="resources/join.gif" vspace="0" width="120"><BR>
<A href="http://xml.apache.org/fop/" onMouseOut="rolloverOff('side-ext-2');" onMouseOver="rolloverOn('side-ext-2');"><IMG alt="About FOP" border="0" height="12" hspace="0" name="side-ext-2" onLoad="rolloverLoad('side-ext-2','graphics/ext-2-label-2.jpg','graphics/ext-2-label-3.jpg');" src="graphics/ext-2-label-3.jpg" vspace="0" width="120"></A><BR>
<IMG border="0" height="6" hspace="0" src="resources/separator.gif" vspace="0" width="120"><BR>
<A href="../index.html" onMouseOut="rolloverOff('side-ext-6');" onMouseOver="rolloverOn('side-ext-6');"><IMG alt="NEW DESIGN" border="0" height="12" hspace="0" name="side-ext-6" onLoad="rolloverLoad('side-ext-6','graphics/ext-6-label-2.jpg','graphics/ext-6-label-3.jpg');" src="graphics/ext-6-label-3.jpg" vspace="0" width="120"></A><BR>
<IMG border="0" height="6" hspace="0" src="resources/separator.gif" vspace="0" width="120"><BR>
<A href="index.html" onMouseOut="rolloverOff('side-index');" onMouseOver="rolloverOn('side-index');"><IMG alt="co-routines" border="0" height="12" hspace="0" name="side-index" onLoad="rolloverLoad('side-index','graphics/index-label-2.jpg','graphics/index-label-3.jpg');" src="graphics/index-label-3.jpg" vspace="0" width="120"></A><BR>
<A href="galleys.html" onMouseOut="rolloverOff('side-galleys');" onMouseOver="rolloverOn('side-galleys');"><IMG alt="galleys" border="0" height="12" hspace="0" name="side-galleys" onLoad="rolloverLoad('side-galleys','graphics/galleys-label-2.jpg','graphics/galleys-label-3.jpg');" src="graphics/galleys-label-3.jpg" vspace="0" width="120"></A><BR>
<A href="footnotes.html" onMouseOut="rolloverOff('side-footnotes');" onMouseOver="rolloverOn('side-footnotes');"><IMG alt="footnotes" border="0" height="12" hspace="0" name="side-footnotes" onLoad="rolloverLoad('side-footnotes','graphics/footnotes-label-2.jpg','graphics/footnotes-label-3.jpg');" src="graphics/footnotes-label-3.jpg" vspace="0" width="120"></A><BR>
<A href="keeps.html" onMouseOut="rolloverOff('side-keeps');" onMouseOver="rolloverOn('side-keeps');"><IMG alt="keeps" border="0" height="12" hspace="0" name="side-keeps" onLoad="rolloverLoad('side-keeps','graphics/keeps-label-2.jpg','graphics/keeps-label-3.jpg');" src="graphics/keeps-label-3.jpg" vspace="0" width="120"></A><BR>
<A href="spaces.html" onMouseOut="rolloverOff('side-spaces');" onMouseOver="rolloverOn('side-spaces');"><IMG alt="space-specifiers" border="0" height="12" hspace="0" name="side-spaces" onLoad="rolloverLoad('side-spaces','graphics/spaces-label-2.jpg','graphics/spaces-label-3.jpg');" src="graphics/spaces-label-3.jpg" vspace="0" width="120"></A><BR>
<IMG border="0" height="6" hspace="0" src="resources/separator.gif" vspace="0" width="120"><BR>
<A href="alt.properties.html" onMouseOut="rolloverOff('side-alt.properties');" onMouseOver="rolloverOn('side-alt.properties');"><IMG alt="alt.properties" border="0" height="12" hspace="0" name="side-alt.properties" onLoad="rolloverLoad('side-alt.properties','graphics/alt.properties-label-2.jpg','graphics/alt.properties-label-3.jpg');" src="graphics/alt.properties-label-3.jpg" vspace="0" width="120"></A><BR>
<A href="classes-overview.html" onMouseOut="rolloverOff('side-classes-overview');" onMouseOver="rolloverOn('side-classes-overview');"><IMG alt="Classes overview" border="0" height="12" hspace="0" name="side-classes-overview" onLoad="rolloverLoad('side-classes-overview','graphics/classes-overview-label-2.jpg','graphics/classes-overview-label-3.jpg');" src="graphics/classes-overview-label-3.jpg" vspace="0" width="120"></A><BR>
<A href="properties-classes.html" onMouseOut="rolloverOff('side-properties-classes');" onMouseOver="rolloverOn('side-properties-classes');"><IMG alt="Properties classes" border="0" height="12" hspace="0" name="side-properties-classes" onLoad="rolloverLoad('side-properties-classes','graphics/properties-classes-label-2.jpg','graphics/properties-classes-label-3.jpg');" src="graphics/properties-classes-label-3.jpg" vspace="0" width="120"></A><BR>
<A href="Properties.html" onMouseOut="rolloverOff('side-Properties');" onMouseOver="rolloverOn('side-Properties');"><IMG alt="Properties" border="0" height="12" hspace="0" name="side-Properties" onLoad="rolloverLoad('side-Properties','graphics/Properties-label-2.jpg','graphics/Properties-label-3.jpg');" src="graphics/Properties-label-3.jpg" vspace="0" width="120"></A><BR>
<A href="PropertyConsts.html" onMouseOut="rolloverOff('side-PropertyConsts');" onMouseOver="rolloverOn('side-PropertyConsts');"><IMG alt="PropertyConsts" border="0" height="12" hspace="0" name="side-PropertyConsts" onLoad="rolloverLoad('side-PropertyConsts','graphics/PropertyConsts-label-2.jpg','graphics/PropertyConsts-label-3.jpg');" src="graphics/PropertyConsts-label-3.jpg" vspace="0" width="120"></A><BR>
<A href="PropNames.html" onMouseOut="rolloverOff('side-PropNames');" onMouseOver="rolloverOn('side-PropNames');"><IMG alt="PropNames" border="0" height="12" hspace="0" name="side-PropNames" onLoad="rolloverLoad('side-PropNames','graphics/PropNames-label-2.jpg','graphics/PropNames-label-3.jpg');" src="graphics/PropNames-label-3.jpg" vspace="0" width="120"></A><BR>
<A href="AbsolutePosition.html" onMouseOut="rolloverOff('side-AbsolutePosition');" onMouseOver="rolloverOn('side-AbsolutePosition');"><IMG alt="AbsolutePosition" border="0" height="12" hspace="0" name="side-AbsolutePosition" onLoad="rolloverLoad('side-AbsolutePosition','graphics/AbsolutePosition-label-2.jpg','graphics/AbsolutePosition-label-3.jpg');" src="graphics/AbsolutePosition-label-3.jpg" vspace="0" width="120"></A><BR>
<A href="VerticalAlign.html" onMouseOut="rolloverOff('side-VerticalAlign');" onMouseOver="rolloverOn('side-VerticalAlign');"><IMG alt="VerticalAlign" border="0" height="12" hspace="0" name="side-VerticalAlign" onLoad="rolloverLoad('side-VerticalAlign','graphics/VerticalAlign-label-2.jpg','graphics/VerticalAlign-label-3.jpg');" src="graphics/VerticalAlign-label-3.jpg" vspace="0" width="120"></A><BR>
<A href="BorderCommonStyle.html" onMouseOut="rolloverOff('side-BorderCommonStyle');" onMouseOver="rolloverOn('side-BorderCommonStyle');"><IMG alt="BorderCommonStyle" border="0" height="12" hspace="0" name="side-BorderCommonStyle" onLoad="rolloverLoad('side-BorderCommonStyle','graphics/BorderCommonStyle-label-2.jpg','graphics/BorderCommonStyle-label-3.jpg');" src="graphics/BorderCommonStyle-label-3.jpg" vspace="0" width="120"></A><BR>
<IMG border="0" height="6" hspace="0" src="resources/separator.gif" vspace="0" width="120"><BR>
<A href="xml-parsing.html" onMouseOut="rolloverOff('side-xml-parsing');" onMouseOver="rolloverOn('side-xml-parsing');"><IMG alt="XML parsing" border="0" height="12" hspace="0" name="side-xml-parsing" onLoad="rolloverLoad('side-xml-parsing','graphics/xml-parsing-label-2.jpg','graphics/xml-parsing-label-3.jpg');" src="graphics/xml-parsing-label-3.jpg" vspace="0" width="120"></A><BR>
<IMG border="0" height="6" hspace="0" src="resources/separator.gif" vspace="0" width="120"><BR>
<A href="property-parsing.html" onMouseOut="rolloverOff('side-property-parsing');" onMouseOver="rolloverOn('side-property-parsing');"><IMG alt="Property parsing" border="0" height="12" hspace="0" name="side-property-parsing" onLoad="rolloverLoad('side-property-parsing','graphics/property-parsing-label-2.jpg','graphics/property-parsing-label-3.jpg');" src="graphics/property-parsing-label-3.jpg" vspace="0" width="120"></A><BR>
<IMG border="0" height="6" hspace="0" src="resources/separator.gif" vspace="0" width="120"><BR>
<IMG alt="Compound properties" border="0" height="12" hspace="0" src="graphics/compound-properties-label-1.jpg" vspace="0" width="120"><BR>
<A href="traits.html" onMouseOut="rolloverOff('side-traits');" onMouseOver="rolloverOn('side-traits');"><IMG alt="Traits" border="0" height="12" hspace="0" name="side-traits" onLoad="rolloverLoad('side-traits','graphics/traits-label-2.jpg','graphics/traits-label-3.jpg');" src="graphics/traits-label-3.jpg" vspace="0" width="120"></A><BR>
<IMG border="0" height="14" hspace="0" src="resources/close.gif" vspace="0" width="120"><BR></TD><TD align="left" valign="top" width="*"><TABLE border="0" cellpadding="3" cellspacing="0"><TR><TD><BR>
<DIV align="right"><TABLE border="0" cellpadding="0" cellspacing="0" width="98%"><TR><TD align="right" height="7" valign="bottom" width="9"><IMG border="0" height="7" hspace="0" src="resources/bar-top-left.gif" vspace="0" width="9"></TD><TD background="resources/bar-border-top.gif"><IMG border="0" height="5" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD><TD align="left" height="7" valign="bottom" width="9"><IMG border="0" height="7" hspace="0" src="resources/bar-top-right.gif" vspace="0" width="9"></TD></TR><TR><TD background="resources/bar-border-left.gif" width="9"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="9"></TD><TD bgcolor="#0086b2" width="100%"><FONT color="#ffffff" face="arial,helvetica,sanserif" size="+1"><IMG border="0" height="5" hspace="0" src="resources/void.gif" vspace="0" width="5"><B>Compound properties in XSLFO</B></FONT></TD><TD background="resources/bar-border-right.gif" width="9"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="9"></TD></TR><TR><TD align="right" height="12" valign="top" width="9"><IMG border="0" height="12" hspace="0" src="resources/bar-bottom-left.gif" vspace="0" width="9"></TD><TD background="resources/bar-border-bottom.gif"><IMG border="0" height="12" hspace="0" src="resources/void.gif" vspace="0"></TD><TD align="left" height="12" valign="top" width="9"><IMG border="0" height="12" hspace="0" src="resources/bar-bottom-right.gif" vspace="0" width="9"></TD></TR></TABLE><TABLE border="0" cellpadding="0" cellspacing="0" width="98%"><TR><TD><FONT color="#000000" face="arial,helvetica,sanserif">
<TABLE border="0" cellpadding="2" cellspacing="2" width="100%"><CAPTION></CAPTION>
<TR>
<TD align="center" bgcolor="#039acc" colspan="" rowspan="" valign="center"><FONT color="#ffffff" face="arial,helvetica,sanserif" size="-1"><B>Property type</B>
</FONT></TD>
<TD align="center" bgcolor="#039acc" colspan="" rowspan="" valign="center"><FONT color="#ffffff" face="arial,helvetica,sanserif" size="-1"><B>Section</B>
</FONT></TD>
<TD align="center" bgcolor="#039acc" colspan="" rowspan="" valign="center"><FONT color="#ffffff" face="arial,helvetica,sanserif" size="-1"><B>Inherited</B>
</FONT></TD>
<TD align="center" bgcolor="#039acc" colspan="" rowspan="" valign="center"><FONT color="#ffffff" face="arial,helvetica,sanserif" size="-1"><B>'inherit'</B>
</FONT></TD>
</TR>
<TR>
<TD align="center" bgcolor="#039acc" colspan="" rowspan="" valign="center"><FONT color="#ffffff" face="arial,helvetica,sanserif" size="-1"><B><length-range></B>
</FONT></TD>
</TR>
<TR>
<TD align="center" bgcolor="#039acc" colspan="" rowspan="" valign="center"><FONT color="#ffffff" face="arial,helvetica,sanserif" size="-1"><B>minimum</B>
</FONT></TD>
</TR>
<TR>
<TD align="center" bgcolor="#039acc" colspan="" rowspan="" valign="center"><FONT color="#ffffff" face="arial,helvetica,sanserif" size="-1"><B>optimum</B>
</FONT></TD>
</TR>
<TR>
<TD align="center" bgcolor="#039acc" colspan="" rowspan="" valign="center"><FONT color="#ffffff" face="arial,helvetica,sanserif" size="-1"><B>maximum</B>
</FONT></TD>
</TR>
<TR>
<TD align="left" bgcolor="#a0ddf0" colspan="" rowspan="" valign="top"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">block-progression-dimension
</FONT></TD>
<TD align="left" bgcolor="#a0ddf0" colspan="" rowspan="" valign="top"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">7.14.1
</FONT></TD>
<TD align="left" bgcolor="#a0ddf0" colspan="" rowspan="" valign="top"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">no
</FONT></TD>
<TD align="left" bgcolor="#a0ddf0" colspan="" rowspan="" valign="top"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">yes
</FONT></TD>
</TR>
<TR>
<TD align="left" bgcolor="#a0ddf0" colspan="" rowspan="" valign="top"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">inline-progression-dimension
</FONT></TD>
<TD align="left" bgcolor="#a0ddf0" colspan="" rowspan="" valign="top"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">7.14.5
</FONT></TD>
<TD align="left" bgcolor="#a0ddf0" colspan="" rowspan="" valign="top"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">no
</FONT></TD>
<TD align="left" bgcolor="#a0ddf0" colspan="" rowspan="" valign="top"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">yes
</FONT></TD>
</TR>
<TR>
<TD align="left" bgcolor="#a0ddf0" colspan="" rowspan="" valign="top"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">leader-length
</FONT></TD>
<TD align="left" bgcolor="#a0ddf0" colspan="" rowspan="" valign="top"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">7.21.4
</FONT></TD>
<TD align="left" bgcolor="#a0ddf0" colspan="" rowspan="" valign="top"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">yes
</FONT></TD>
<TD align="left" bgcolor="#a0ddf0" colspan="" rowspan="" valign="top"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">yes
</FONT></TD>
</TR>
<TR>
<TD align="center" bgcolor="#039acc" colspan="" rowspan="" valign="center"><FONT color="#ffffff" face="arial,helvetica,sanserif" size="-1"><B><length-conditional></B>
</FONT></TD>
</TR>
<TR>
<TD align="center" bgcolor="#039acc" colspan="" rowspan="" valign="center"><FONT color="#ffffff" face="arial,helvetica,sanserif" size="-1"><B>length</B>
</FONT></TD>
</TR>
<TR>
<TD align="center" bgcolor="#039acc" colspan="" rowspan="" valign="center"><FONT color="#ffffff" face="arial,helvetica,sanserif" size="-1"><B>conditionality</B>
</FONT></TD>
</TR>
<TR>
<TD align="left" bgcolor="#a0ddf0" colspan="" rowspan="" valign="top"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">border-after-width
</FONT></TD>
<TD align="left" bgcolor="#a0ddf0" colspan="" rowspan="" valign="top"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">7.7.12
</FONT></TD>
<TD align="left" bgcolor="#a0ddf0" colspan="" rowspan="" valign="top"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">no
</FONT></TD>
<TD align="left" bgcolor="#a0ddf0" colspan="" rowspan="" valign="top"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">yes
</FONT></TD>
</TR>
<TR>
<TD align="left" bgcolor="#a0ddf0" colspan="" rowspan="" valign="top"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">border-before-width
</FONT></TD>
<TD align="left" bgcolor="#a0ddf0" colspan="" rowspan="" valign="top"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">7.7.9
</FONT></TD>
<TD align="left" bgcolor="#a0ddf0" colspan="" rowspan="" valign="top"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">no
</FONT></TD>
<TD align="left" bgcolor="#a0ddf0" colspan="" rowspan="" valign="top"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">yes
</FONT></TD>
</TR>
<TR>
<TD align="left" bgcolor="#a0ddf0" colspan="" rowspan="" valign="top"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">border-end-width
</FONT></TD>
<TD align="left" bgcolor="#a0ddf0" colspan="" rowspan="" valign="top"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">7.7.18
</FONT></TD>
<TD align="left" bgcolor="#a0ddf0" colspan="" rowspan="" valign="top"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">no
</FONT></TD>
<TD align="left" bgcolor="#a0ddf0" colspan="" rowspan="" valign="top"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">yes
</FONT></TD>
</TR>
<TR>
<TD align="left" bgcolor="#a0ddf0" colspan="" rowspan="" valign="top"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">border-start-width
</FONT></TD>
<TD align="left" bgcolor="#a0ddf0" colspan="" rowspan="" valign="top"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">7.7.15
</FONT></TD>
<TD align="left" bgcolor="#a0ddf0" colspan="" rowspan="" valign="top"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">no
</FONT></TD>
<TD align="left" bgcolor="#a0ddf0" colspan="" rowspan="" valign="top"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">yes
</FONT></TD>
</TR>
<TR>
<TD align="left" bgcolor="#a0ddf0" colspan="" rowspan="" valign="top"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">padding-after
</FONT></TD>
<TD align="left" bgcolor="#a0ddf0" colspan="" rowspan="" valign="top"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">7.7.32
</FONT></TD>
<TD align="left" bgcolor="#a0ddf0" colspan="" rowspan="" valign="top"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">no
</FONT></TD>
<TD align="left" bgcolor="#a0ddf0" colspan="" rowspan="" valign="top"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">yes
</FONT></TD>
</TR>
<TR>
<TD align="left" bgcolor="#a0ddf0" colspan="" rowspan="" valign="top"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">padding-before
</FONT></TD>
<TD align="left" bgcolor="#a0ddf0" colspan="" rowspan="" valign="top"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">7.7.31
</FONT></TD>
<TD align="left" bgcolor="#a0ddf0" colspan="" rowspan="" valign="top"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">no
</FONT></TD>
<TD align="left" bgcolor="#a0ddf0" colspan="" rowspan="" valign="top"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">yes
</FONT></TD>
</TR>
<TR>
<TD align="left" bgcolor="#a0ddf0" colspan="" rowspan="" valign="top"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">padding-end
</FONT></TD>
<TD align="left" bgcolor="#a0ddf0" colspan="" rowspan="" valign="top"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">7.7.34
</FONT></TD>
<TD align="left" bgcolor="#a0ddf0" colspan="" rowspan="" valign="top"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">no
</FONT></TD>
<TD align="left" bgcolor="#a0ddf0" colspan="" rowspan="" valign="top"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">yes
</FONT></TD>
</TR>
<TR>
<TD align="left" bgcolor="#a0ddf0" colspan="" rowspan="" valign="top"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">padding-start
</FONT></TD>
<TD align="left" bgcolor="#a0ddf0" colspan="" rowspan="" valign="top"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">7.7.33
</FONT></TD>
<TD align="left" bgcolor="#a0ddf0" colspan="" rowspan="" valign="top"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">no
</FONT></TD>
<TD align="left" bgcolor="#a0ddf0" colspan="" rowspan="" valign="top"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">yes
</FONT></TD>
</TR>
<TR>
<TD align="center" bgcolor="#039acc" colspan="" rowspan="" valign="center"><FONT color="#ffffff" face="arial,helvetica,sanserif" size="-1"><B><length-bp-ip-direction></B>
</FONT></TD>
</TR>
<TR>
<TD align="center" bgcolor="#039acc" colspan="" rowspan="" valign="center"><FONT color="#ffffff" face="arial,helvetica,sanserif" size="-1"><B>block-progression-direction</B>
</FONT></TD>
</TR>
<TR>
<TD align="center" bgcolor="#039acc" colspan="" rowspan="" valign="center"><FONT color="#ffffff" face="arial,helvetica,sanserif" size="-1"><B>inline-progression-direction</B>
</FONT></TD>
</TR>
<TR>
<TD align="left" bgcolor="#a0ddf0" colspan="" rowspan="" valign="top"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">border-separation
</FONT></TD>
<TD align="left" bgcolor="#a0ddf0" colspan="" rowspan="" valign="top"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">7.26.5
</FONT></TD>
<TD align="left" bgcolor="#a0ddf0" colspan="" rowspan="" valign="top"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">yes
</FONT></TD>
<TD align="left" bgcolor="#a0ddf0" colspan="" rowspan="" valign="top"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">yes
</FONT></TD>
</TR>
<TR>
<TD align="center" bgcolor="#039acc" colspan="" rowspan="" valign="center"><FONT color="#ffffff" face="arial,helvetica,sanserif" size="-1"><B><space></B>
</FONT></TD>
</TR>
<TR>
<TD align="center" bgcolor="#039acc" colspan="" rowspan="" valign="center"><FONT color="#ffffff" face="arial,helvetica,sanserif" size="-1"><B>minimum</B>
</FONT></TD>
</TR>
<TR>
<TD align="center" bgcolor="#039acc" colspan="" rowspan="" valign="center"><FONT color="#ffffff" face="arial,helvetica,sanserif" size="-1"><B>optimum</B>
</FONT></TD>
</TR>
<TR>
<TD align="center" bgcolor="#039acc" colspan="" rowspan="" valign="center"><FONT color="#ffffff" face="arial,helvetica,sanserif" size="-1"><B>maximum</B>
</FONT></TD>
</TR>
<TR>
<TD align="center" bgcolor="#039acc" colspan="" rowspan="" valign="center"><FONT color="#ffffff" face="arial,helvetica,sanserif" size="-1"><B>precedence</B>
</FONT></TD>
</TR>
<TR>
<TD align="center" bgcolor="#039acc" colspan="" rowspan="" valign="center"><FONT color="#ffffff" face="arial,helvetica,sanserif" size="-1"><B>conditionality</B>
</FONT></TD>
</TR>
<TR>
<TD align="left" bgcolor="#a0ddf0" colspan="" rowspan="" valign="top"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">letter-spacing
</FONT></TD>
<TD align="left" bgcolor="#a0ddf0" colspan="" rowspan="" valign="top"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">7.16.2
</FONT></TD>
<TD align="left" bgcolor="#a0ddf0" colspan="" rowspan="" valign="top"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">yes
</FONT></TD>
<TD align="left" bgcolor="#a0ddf0" colspan="" rowspan="" valign="top"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">yes
</FONT></TD>
</TR>
<TR>
<TD align="left" bgcolor="#a0ddf0" colspan="" rowspan="" valign="top"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">line-height
</FONT></TD>
<TD align="left" bgcolor="#a0ddf0" colspan="" rowspan="" valign="top"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">7.15.4
</FONT></TD>
<TD align="left" bgcolor="#a0ddf0" colspan="" rowspan="" valign="top"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">yes
</FONT></TD>
<TD align="left" bgcolor="#a0ddf0" colspan="" rowspan="" valign="top"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">yes
</FONT></TD>
</TR>
<TR>
<TD align="left" bgcolor="#a0ddf0" colspan="" rowspan="" valign="top"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">space-after
</FONT></TD>
<TD align="left" bgcolor="#a0ddf0" colspan="" rowspan="" valign="top"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">7.10.6
</FONT></TD>
<TD align="left" bgcolor="#a0ddf0" colspan="" rowspan="" valign="top"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">no
</FONT></TD>
<TD align="left" bgcolor="#a0ddf0" colspan="" rowspan="" valign="top"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">yes
</FONT></TD>
</TR>
<TR>
<TD align="left" bgcolor="#a0ddf0" colspan="" rowspan="" valign="top"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">space-before
</FONT></TD>
<TD align="left" bgcolor="#a0ddf0" colspan="" rowspan="" valign="top"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">7.10.5
</FONT></TD>
<TD align="left" bgcolor="#a0ddf0" colspan="" rowspan="" valign="top"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">no
</FONT></TD>
<TD align="left" bgcolor="#a0ddf0" colspan="" rowspan="" valign="top"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">yes
</FONT></TD>
</TR>
<TR>
<TD align="left" bgcolor="#a0ddf0" colspan="" rowspan="" valign="top"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">space-end
</FONT></TD>
<TD align="left" bgcolor="#a0ddf0" colspan="" rowspan="" valign="top"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">7.11.1
</FONT></TD>
<TD align="left" bgcolor="#a0ddf0" colspan="" rowspan="" valign="top"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">no
</FONT></TD>
<TD align="left" bgcolor="#a0ddf0" colspan="" rowspan="" valign="top"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">yes
</FONT></TD>
</TR>
<TR>
<TD align="left" bgcolor="#a0ddf0" colspan="" rowspan="" valign="top"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">space-start
</FONT></TD>
<TD align="left" bgcolor="#a0ddf0" colspan="" rowspan="" valign="top"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">7.11.2
</FONT></TD>
<TD align="left" bgcolor="#a0ddf0" colspan="" rowspan="" valign="top"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">no
</FONT></TD>
<TD align="left" bgcolor="#a0ddf0" colspan="" rowspan="" valign="top"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">yes
</FONT></TD>
</TR>
<TR>
<TD align="left" bgcolor="#a0ddf0" colspan="" rowspan="" valign="top"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">word-spacing
</FONT></TD>
<TD align="left" bgcolor="#a0ddf0" colspan="" rowspan="" valign="top"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">7.16.8
</FONT></TD>
<TD align="left" bgcolor="#a0ddf0" colspan="" rowspan="" valign="top"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">yes
</FONT></TD>
<TD align="left" bgcolor="#a0ddf0" colspan="" rowspan="" valign="top"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">yes
</FONT></TD>
</TR>
<TR>
<TD align="center" bgcolor="#039acc" colspan="" rowspan="" valign="center"><FONT color="#ffffff" face="arial,helvetica,sanserif" size="-1"><B><keep></B>
</FONT></TD>
</TR>
<TR>
<TD align="center" bgcolor="#039acc" colspan="" rowspan="" valign="center"><FONT color="#ffffff" face="arial,helvetica,sanserif" size="-1"><B>within-line</B>
</FONT></TD>
</TR>
<TR>
<TD align="center" bgcolor="#039acc" colspan="" rowspan="" valign="center"><FONT color="#ffffff" face="arial,helvetica,sanserif" size="-1"><B>within-column</B>
</FONT></TD>
</TR>
<TR>
<TD align="center" bgcolor="#039acc" colspan="" rowspan="" valign="center"><FONT color="#ffffff" face="arial,helvetica,sanserif" size="-1"><B>within-page</B>
</FONT></TD>
</TR>
<TR>
<TD align="left" bgcolor="#a0ddf0" colspan="" rowspan="" valign="top"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">keep-together
</FONT></TD>
<TD align="left" bgcolor="#a0ddf0" colspan="" rowspan="" valign="top"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">7.19.3
</FONT></TD>
<TD align="left" bgcolor="#a0ddf0" colspan="" rowspan="" valign="top"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">yes
</FONT></TD>
<TD align="left" bgcolor="#a0ddf0" colspan="" rowspan="" valign="top"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">yes
</FONT></TD>
</TR>
<TR>
<TD align="left" bgcolor="#a0ddf0" colspan="" rowspan="" valign="top"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">keep-with-next
</FONT></TD>
<TD align="left" bgcolor="#a0ddf0" colspan="" rowspan="" valign="top"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">7.19.4
</FONT></TD>
<TD align="left" bgcolor="#a0ddf0" colspan="" rowspan="" valign="top"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">no
</FONT></TD>
<TD align="left" bgcolor="#a0ddf0" colspan="" rowspan="" valign="top"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">yes
</FONT></TD>
</TR>
<TR>
<TD align="left" bgcolor="#a0ddf0" colspan="" rowspan="" valign="top"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">keep-with-previous
</FONT></TD>
<TD align="left" bgcolor="#a0ddf0" colspan="" rowspan="" valign="top"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">7.19.5
</FONT></TD>
<TD align="left" bgcolor="#a0ddf0" colspan="" rowspan="" valign="top"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">no
</FONT></TD>
<TD align="left" bgcolor="#a0ddf0" colspan="" rowspan="" valign="top"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">yes
</FONT></TD>
</TR>
</TABLE>
</FONT></TD></TR></TABLE></DIV><BR>
</TD></TR></TABLE></TD></TR></TABLE><BR><TABLE border="0" cellpadding="0" cellspacing="0" width="100%"><TR><TD bgcolor="#0086b2"><IMG height="1" src="images/dot.gif" width="1"></TD></TR><TR><TD align="center"><FONT color="#0086b2" face="arial,helvetica,sanserif" size="-1"><I>
Copyright © 2001-2002 The Apache Software Foundation.
All Rights Reserved.
</I></FONT></TD></TR></TABLE></BODY></HTML>
1.1 xml-site/targets/fop/design/alt.design/footnotes.html
Index: footnotes.html
===================================================================
<HTML><HEAD><SCRIPT language="JavaScript" src="resources/script.js" type="text/javascript"></SCRIPT><TITLE>Implementing footnotes</TITLE></HEAD><BODY alink="#cc0000" bgcolor="#ffffff" leftmargin="4" link="#039acc" marginheight="4" marginwidth="4" text="#000000" topmargin="4" vlink="#0086b2"><TABLE border="0" cellpadding="0" cellspacing="0" width="100%"><TR><TD align="left" height="60" rowspan="3" valign="top" width="135"><IMG border="0" height="60" hspace="0" src="resources/logo.gif" vspace="0" width="135"></TD><TD align="left" background="resources/line.gif" colspan="2" height="5" valign="top" width="100%"><IMG align="left" border="0" height="5" hspace="0" src="resources/line.gif" vspace="0" width="1"></TD><TD align="left" height="60" rowspan="3" valign="top" width="29"><IMG border="0" height="60" hspace="0" src="resources/right.gif" vspace="0" width="29"></TD></TR><TR><TD align="left" bgcolor="#0086b2" colspan="2" height="35" valign="top" width="100%"><IMG align="right" alt="" border="0" height="35" hspace="0" src="graphics/footnotes-header.jpg" vspace="0" width="456"></TD></TR><TR><TD align="left" background="resources/bottom.gif" bgcolor="#0086b2" height="20" valign="top" width="100%"><IMG align="left" border="0" height="20" hspace="0" src="resources/bottom.gif" vspace="0" width="3"></TD><TD align="right" background="resources/bottom.gif" bgcolor="#0086b2" height="20" valign="top" width="288"><TABLE border="0" cellpadding="0" cellspacing="0" width="288"><TR><TD align="left" height="20" valign="top" width="96"><A href="http://xml.apache.org/" onMouseOut="rolloverOff('xml');" onMouseOver="rolloverOn('xml');" target="new"><IMG alt="http://xml.apache.org/" border="0" height="20" hspace="0" name="xml" onLoad="rolloverLoad('xml','resources/button-xml-hi.gif','resources/button-xml-lo.gif');" src="resources/button-xml-lo.gif" vspace="0" width="96"></A></TD><TD align="left" height="20" valign="top" width="96"><A href="http://www.apache.org/" onMouseOut="rolloverOff('asf');" onMouseOver="rolloverOn('asf');" target="new"><IMG alt="http://www.apache.org/" border="0" height="20" hspace="0" name="asf" onLoad="rolloverLoad('asf','resources/button-asf-hi.gif','resources/button-asf-lo.gif');" src="resources/button-asf-lo.gif" vspace="0" width="96"></A></TD><TD align="left" height="20" valign="top" width="96"><A href="http://www.w3.org/" onMouseOut="rolloverOff('w3c');" onMouseOver="rolloverOn('w3c');" target="new"><IMG alt="http://www.w3.org/" border="0" height="20" hspace="0" name="w3c" onLoad="rolloverLoad('w3c','resources/button-w3c-hi.gif','resources/button-w3c-lo.gif');" src="resources/button-w3c-lo.gif" vspace="0" width="96"></A></TD></TR></TABLE></TD></TR></TABLE><TABLE border="0" cellpadding="0" cellspacing="0" width="100%"><TR><TD align="left" valign="top" width="120"><IMG border="0" height="14" hspace="0" src="resources/join.gif" vspace="0" width="120"><BR>
<A href="http://xml.apache.org/fop/" onMouseOut="rolloverOff('side-ext-2');" onMouseOver="rolloverOn('side-ext-2');"><IMG alt="About FOP" border="0" height="12" hspace="0" name="side-ext-2" onLoad="rolloverLoad('side-ext-2','graphics/ext-2-label-2.jpg','graphics/ext-2-label-3.jpg');" src="graphics/ext-2-label-3.jpg" vspace="0" width="120"></A><BR>
<IMG border="0" height="6" hspace="0" src="resources/separator.gif" vspace="0" width="120"><BR>
<A href="../index.html" onMouseOut="rolloverOff('side-ext-6');" onMouseOver="rolloverOn('side-ext-6');"><IMG alt="NEW DESIGN" border="0" height="12" hspace="0" name="side-ext-6" onLoad="rolloverLoad('side-ext-6','graphics/ext-6-label-2.jpg','graphics/ext-6-label-3.jpg');" src="graphics/ext-6-label-3.jpg" vspace="0" width="120"></A><BR>
<IMG border="0" height="6" hspace="0" src="resources/separator.gif" vspace="0" width="120"><BR>
<A href="index.html" onMouseOut="rolloverOff('side-index');" onMouseOver="rolloverOn('side-index');"><IMG alt="co-routines" border="0" height="12" hspace="0" name="side-index" onLoad="rolloverLoad('side-index','graphics/index-label-2.jpg','graphics/index-label-3.jpg');" src="graphics/index-label-3.jpg" vspace="0" width="120"></A><BR>
<A href="galleys.html" onMouseOut="rolloverOff('side-galleys');" onMouseOver="rolloverOn('side-galleys');"><IMG alt="galleys" border="0" height="12" hspace="0" name="side-galleys" onLoad="rolloverLoad('side-galleys','graphics/galleys-label-2.jpg','graphics/galleys-label-3.jpg');" src="graphics/galleys-label-3.jpg" vspace="0" width="120"></A><BR>
<IMG alt="footnotes" border="0" height="12" hspace="0" src="graphics/footnotes-label-1.jpg" vspace="0" width="120"><BR>
<A href="keeps.html" onMouseOut="rolloverOff('side-keeps');" onMouseOver="rolloverOn('side-keeps');"><IMG alt="keeps" border="0" height="12" hspace="0" name="side-keeps" onLoad="rolloverLoad('side-keeps','graphics/keeps-label-2.jpg','graphics/keeps-label-3.jpg');" src="graphics/keeps-label-3.jpg" vspace="0" width="120"></A><BR>
<A href="spaces.html" onMouseOut="rolloverOff('side-spaces');" onMouseOver="rolloverOn('side-spaces');"><IMG alt="space-specifiers" border="0" height="12" hspace="0" name="side-spaces" onLoad="rolloverLoad('side-spaces','graphics/spaces-label-2.jpg','graphics/spaces-label-3.jpg');" src="graphics/spaces-label-3.jpg" vspace="0" width="120"></A><BR>
<IMG border="0" height="6" hspace="0" src="resources/separator.gif" vspace="0" width="120"><BR>
<A href="alt.properties.html" onMouseOut="rolloverOff('side-alt.properties');" onMouseOver="rolloverOn('side-alt.properties');"><IMG alt="alt.properties" border="0" height="12" hspace="0" name="side-alt.properties" onLoad="rolloverLoad('side-alt.properties','graphics/alt.properties-label-2.jpg','graphics/alt.properties-label-3.jpg');" src="graphics/alt.properties-label-3.jpg" vspace="0" width="120"></A><BR>
<A href="classes-overview.html" onMouseOut="rolloverOff('side-classes-overview');" onMouseOver="rolloverOn('side-classes-overview');"><IMG alt="Classes overview" border="0" height="12" hspace="0" name="side-classes-overview" onLoad="rolloverLoad('side-classes-overview','graphics/classes-overview-label-2.jpg','graphics/classes-overview-label-3.jpg');" src="graphics/classes-overview-label-3.jpg" vspace="0" width="120"></A><BR>
<A href="properties-classes.html" onMouseOut="rolloverOff('side-properties-classes');" onMouseOver="rolloverOn('side-properties-classes');"><IMG alt="Properties classes" border="0" height="12" hspace="0" name="side-properties-classes" onLoad="rolloverLoad('side-properties-classes','graphics/properties-classes-label-2.jpg','graphics/properties-classes-label-3.jpg');" src="graphics/properties-classes-label-3.jpg" vspace="0" width="120"></A><BR>
<A href="Properties.html" onMouseOut="rolloverOff('side-Properties');" onMouseOver="rolloverOn('side-Properties');"><IMG alt="Properties" border="0" height="12" hspace="0" name="side-Properties" onLoad="rolloverLoad('side-Properties','graphics/Properties-label-2.jpg','graphics/Properties-label-3.jpg');" src="graphics/Properties-label-3.jpg" vspace="0" width="120"></A><BR>
<A href="PropertyConsts.html" onMouseOut="rolloverOff('side-PropertyConsts');" onMouseOver="rolloverOn('side-PropertyConsts');"><IMG alt="PropertyConsts" border="0" height="12" hspace="0" name="side-PropertyConsts" onLoad="rolloverLoad('side-PropertyConsts','graphics/PropertyConsts-label-2.jpg','graphics/PropertyConsts-label-3.jpg');" src="graphics/PropertyConsts-label-3.jpg" vspace="0" width="120"></A><BR>
<A href="PropNames.html" onMouseOut="rolloverOff('side-PropNames');" onMouseOver="rolloverOn('side-PropNames');"><IMG alt="PropNames" border="0" height="12" hspace="0" name="side-PropNames" onLoad="rolloverLoad('side-PropNames','graphics/PropNames-label-2.jpg','graphics/PropNames-label-3.jpg');" src="graphics/PropNames-label-3.jpg" vspace="0" width="120"></A><BR>
<A href="AbsolutePosition.html" onMouseOut="rolloverOff('side-AbsolutePosition');" onMouseOver="rolloverOn('side-AbsolutePosition');"><IMG alt="AbsolutePosition" border="0" height="12" hspace="0" name="side-AbsolutePosition" onLoad="rolloverLoad('side-AbsolutePosition','graphics/AbsolutePosition-label-2.jpg','graphics/AbsolutePosition-label-3.jpg');" src="graphics/AbsolutePosition-label-3.jpg" vspace="0" width="120"></A><BR>
<A href="VerticalAlign.html" onMouseOut="rolloverOff('side-VerticalAlign');" onMouseOver="rolloverOn('side-VerticalAlign');"><IMG alt="VerticalAlign" border="0" height="12" hspace="0" name="side-VerticalAlign" onLoad="rolloverLoad('side-VerticalAlign','graphics/VerticalAlign-label-2.jpg','graphics/VerticalAlign-label-3.jpg');" src="graphics/VerticalAlign-label-3.jpg" vspace="0" width="120"></A><BR>
<A href="BorderCommonStyle.html" onMouseOut="rolloverOff('side-BorderCommonStyle');" onMouseOver="rolloverOn('side-BorderCommonStyle');"><IMG alt="BorderCommonStyle" border="0" height="12" hspace="0" name="side-BorderCommonStyle" onLoad="rolloverLoad('side-BorderCommonStyle','graphics/BorderCommonStyle-label-2.jpg','graphics/BorderCommonStyle-label-3.jpg');" src="graphics/BorderCommonStyle-label-3.jpg" vspace="0" width="120"></A><BR>
<IMG border="0" height="6" hspace="0" src="resources/separator.gif" vspace="0" width="120"><BR>
<A href="xml-parsing.html" onMouseOut="rolloverOff('side-xml-parsing');" onMouseOver="rolloverOn('side-xml-parsing');"><IMG alt="XML parsing" border="0" height="12" hspace="0" name="side-xml-parsing" onLoad="rolloverLoad('side-xml-parsing','graphics/xml-parsing-label-2.jpg','graphics/xml-parsing-label-3.jpg');" src="graphics/xml-parsing-label-3.jpg" vspace="0" width="120"></A><BR>
<IMG border="0" height="6" hspace="0" src="resources/separator.gif" vspace="0" width="120"><BR>
<A href="property-parsing.html" onMouseOut="rolloverOff('side-property-parsing');" onMouseOver="rolloverOn('side-property-parsing');"><IMG alt="Property parsing" border="0" height="12" hspace="0" name="side-property-parsing" onLoad="rolloverLoad('side-property-parsing','graphics/property-parsing-label-2.jpg','graphics/property-parsing-label-3.jpg');" src="graphics/property-parsing-label-3.jpg" vspace="0" width="120"></A><BR>
<IMG border="0" height="6" hspace="0" src="resources/separator.gif" vspace="0" width="120"><BR>
<A href="compound-properties.html" onMouseOut="rolloverOff('side-compound-properties');" onMouseOver="rolloverOn('side-compound-properties');"><IMG alt="Compound properties" border="0" height="12" hspace="0" name="side-compound-properties" onLoad="rolloverLoad('side-compound-properties','graphics/compound-properties-label-2.jpg','graphics/compound-properties-label-3.jpg');" src="graphics/compound-properties-label-3.jpg" vspace="0" width="120"></A><BR>
<A href="traits.html" onMouseOut="rolloverOff('side-traits');" onMouseOver="rolloverOn('side-traits');"><IMG alt="Traits" border="0" height="12" hspace="0" name="side-traits" onLoad="rolloverLoad('side-traits','graphics/traits-label-2.jpg','graphics/traits-label-3.jpg');" src="graphics/traits-label-3.jpg" vspace="0" width="120"></A><BR>
<IMG border="0" height="14" hspace="0" src="resources/close.gif" vspace="0" width="120"><BR></TD><TD align="left" valign="top" width="*"><TABLE border="0" cellpadding="3" cellspacing="0"><TR><TD><BR>
<DIV align="right"><TABLE border="0" cellpadding="0" cellspacing="0" width="98%"><TR><TD align="right" height="7" valign="bottom" width="9"><IMG border="0" height="7" hspace="0" src="resources/bar-top-left.gif" vspace="0" width="9"></TD><TD background="resources/bar-border-top.gif"><IMG border="0" height="5" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD><TD align="left" height="7" valign="bottom" width="9"><IMG border="0" height="7" hspace="0" src="resources/bar-top-right.gif" vspace="0" width="9"></TD></TR><TR><TD background="resources/bar-border-left.gif" width="9"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="9"></TD><TD bgcolor="#0086b2" width="100%"><FONT color="#ffffff" face="arial,helvetica,sanserif" size="+1"><IMG border="0" height="5" hspace="0" src="resources/void.gif" vspace="0" width="5"><B>Implementing footnotes in FOP</B></FONT></TD><TD background="resources/bar-border-right.gif" width="9"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="9"></TD></TR><TR><TD align="right" height="12" valign="top" width="9"><IMG border="0" height="12" hspace="0" src="resources/bar-bottom-left.gif" vspace="0" width="9"></TD><TD background="resources/bar-border-bottom.gif"><IMG border="0" height="12" hspace="0" src="resources/void.gif" vspace="0"></TD><TD align="left" height="12" valign="top" width="9"><IMG border="0" height="12" hspace="0" src="resources/bar-bottom-right.gif" vspace="0" width="9"></TD></TR></TABLE><TABLE border="0" cellpadding="0" cellspacing="0" width="98%"><TR><TD><FONT color="#000000" face="arial,helvetica,sanserif">
<P align="left">
Footnotes present difficulties for page layout primarily
because their point of invocation in the flow is different
from their point of appearance in the area tree. All of the
content lines of a footnote may appear on the same page as its
invocation point, all may appear on a following page, or the
lines may be split over a page or pages. (This characteristic
leads to another problem when a footnote overflows the last
page of flow content, but that difficulty will not be
discussed here.) This note considers some aspects of the
implementation of footnotes in a galley-based design.
</P>
<DIV align="right"><TABLE border="0" cellpadding="0" cellspacing="0" width="95%"><TR><TD align="right" height="7" valign="bottom" width="9"><IMG border="0" height="7" hspace="0" src="resources/bar-top-left.gif" vspace="0" width="9"></TD><TD background="resources/bar-border-top.gif"><IMG border="0" height="5" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD><TD align="left" height="7" valign="bottom" width="9"><IMG border="0" height="7" hspace="0" src="resources/bar-top-right.gif" vspace="0" width="9"></TD></TR><TR><TD background="resources/bar-border-left.gif" width="9"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="9"></TD><TD bgcolor="#0086b2" width="100%"><FONT color="#ffffff" face="arial,helvetica,sanserif"><IMG border="0" height="5" hspace="0" src="resources/void.gif" vspace="0" width="5"><B>Footnotes and galleys</B></FONT></TD><TD background="resources/bar-border-right.gif" width="9"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="9"></TD></TR><TR><TD align="right" height="12" valign="top" width="9"><IMG border="0" height="12" hspace="0" src="resources/bar-bottom-left.gif" vspace="0" width="9"></TD><TD background="resources/bar-border-bottom.gif"><IMG border="0" height="12" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD><TD align="left" height="12" valign="top" width="9"><IMG border="0" height="12" hspace="0" src="resources/bar-bottom-right.gif" vspace="0" width="9"></TD></TR></TABLE><TABLE border="0" cellpadding="0" cellspacing="0" width="95%"><TR><TD><FONT color="#000000" face="arial,helvetica,sanserif">
<P align="left">
In the structure described in the <A href="../galleys.html">introduction to FOP galleys</A>,
footnotes would be pre-processed as galleys themselves, but
they would remain attached as subtrees to their points of
invocation in the main text. Allocation to a
footnote-reference-area would only occur in the resolution
to Area nodes.
</P>
<P align="left">
When footnotes are introduced, the communication between
galleys and layout manager, as mentioned <A href="../galleys.html#pre-processing">above</A>, would be
affected. The returned information would two b-p-d values:
the primary line-area b-p-d impact and the footnote b-p-d
impact. The distinction is necessary for two reasons; to
alert the layout manager to the first footnote of the page,
and because the footnote b-p-d will always impact the
main-reference-area b-p-d, whereas the primary inline-area
may not, e.g. in the case of multiple span-areas.
</P>
</FONT></TD></TR></TABLE></DIV><BR>
<DIV align="right"><TABLE border="0" cellpadding="0" cellspacing="0" width="95%"><TR><TD align="right" height="7" valign="bottom" width="9"><IMG border="0" height="7" hspace="0" src="resources/bar-top-left.gif" vspace="0" width="9"></TD><TD background="resources/bar-border-top.gif"><IMG border="0" height="5" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD><TD align="left" height="7" valign="bottom" width="9"><IMG border="0" height="7" hspace="0" src="resources/bar-top-right.gif" vspace="0" width="9"></TD></TR><TR><TD background="resources/bar-border-left.gif" width="9"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="9"></TD><TD bgcolor="#0086b2" width="100%"><FONT color="#ffffff" face="arial,helvetica,sanserif"><IMG border="0" height="5" hspace="0" src="resources/void.gif" vspace="0" width="5"><B>Multiple columns and footnotes</B></FONT></TD><TD background="resources/bar-border-right.gif" width="9"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="9"></TD></TR><TR><TD align="right" height="12" valign="top" width="9"><IMG border="0" height="12" hspace="0" src="resources/bar-bottom-left.gif" vspace="0" width="9"></TD><TD background="resources/bar-border-bottom.gif"><IMG border="0" height="12" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD><TD align="left" height="12" valign="top" width="9"><IMG border="0" height="12" hspace="0" src="resources/bar-bottom-right.gif" vspace="0" width="9"></TD></TR></TABLE><TABLE border="0" cellpadding="0" cellspacing="0" width="95%"><TR><TD><FONT color="#000000" face="arial,helvetica,sanserif">
<P><TABLE border="0" cellpadding="0" cellspacing="3" width="100%"><TR><TD valign="top" width="28"><IMG alt="Note" border="0" height="29" hspace="0" src="resources/note.gif" vspace="0" width="28"></TD><TD valign="top"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1"><I>
A possible method for multi-column layout and balancing
with footnotes, using a galley-based approach.
</I></FONT></TD></TR></TABLE></P>
<P align="left">
This note assumes a galley, as discussed <A href="../galleys.html">elsewhere</A>, flowing text with
footnotes and possibly other blocks into a possibly
multi-column area. The logic of flowing into multiple
columns is trivially applied to a single column. The galley
is manipulated within the context of the <I>layout
tree</I>.
</P>
<P align="left">
Associated with the galley are two sets of data.
One contains the maps of all "natural" break-points and
the of all hyphenation break-points. This set is
constructed at the time of construction of the galley and
is a constant for a given galley. The second contains
dynamic data which represents one possible attempt to lay
out the galley. There may be multiple sets of such data
to reflect varying attempts. The data of this set are,
essentially, representations of line-areas, with the supporting
information necessary to determine these line-areas.
</P>
<P align="left">
The line-area data includes the boundaries within the
galley of each line-area, the boundaries of each column
and the boundaries of the "page", or main area. When a
line-area boundary occurs at a hyphenation point, a
"virtual hyphen" is assumed and accounted for in the
i-p-d. As mentioned, individual footnote galleys will
hang from the parent galley. The associated data of the
footnote galleys is similar: a once-only break-points map,
and one or more line-area maps. No column boundaries are
required, but a page boundary is required at the end of
the last footnote or where a footnote breaks across a page
boundary.
</P>
<P align="left">
A number of b-p-d values are also maintained. For each
line-area, the b-p-d, the main area b-p-d increment, the
footnote b-p-d increment and the footnote's page-related
b-p-d increment are required. The main-area b-p-d
increments for any particular line-area are dependent on
the column position of the line-area. Total b-p-d's are
also kept: total footnote b-p-d, total main area b-p-d,
and totals for each column.<BR><BR>
<B>Figure 1</B> Columns before first footnote.
</P>
<P align="center"><IMG alt="Columns before first footnote" border="0" hspace="4" src="initial-column-values.png" vspace="4"></P>
</FONT></TD></TR></TABLE></DIV><BR>
<DIV align="right"><TABLE border="0" cellpadding="0" cellspacing="0" width="95%"><TR><TD align="right" height="7" valign="bottom" width="9"><IMG border="0" height="7" hspace="0" src="resources/bar-top-left.gif" vspace="0" width="9"></TD><TD background="resources/bar-border-top.gif"><IMG border="0" height="5" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD><TD align="left" height="7" valign="bottom" width="9"><IMG border="0" height="7" hspace="0" src="resources/bar-top-right.gif" vspace="0" width="9"></TD></TR><TR><TD background="resources/bar-border-left.gif" width="9"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="9"></TD><TD bgcolor="#0086b2" width="100%"><FONT color="#ffffff" face="arial,helvetica,sanserif"><IMG border="0" height="5" hspace="0" src="resources/void.gif" vspace="0" width="5"><B>Balancing columns</B></FONT></TD><TD background="resources/bar-border-right.gif" width="9"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="9"></TD></TR><TR><TD align="right" height="12" valign="top" width="9"><IMG border="0" height="12" hspace="0" src="resources/bar-bottom-left.gif" vspace="0" width="9"></TD><TD background="resources/bar-border-bottom.gif"><IMG border="0" height="12" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD><TD align="left" height="12" valign="top" width="9"><IMG border="0" height="12" hspace="0" src="resources/bar-bottom-right.gif" vspace="0" width="9"></TD></TR></TABLE><TABLE border="0" cellpadding="0" cellspacing="0" width="95%"><TR><TD><FONT color="#000000" face="arial,helvetica,sanserif">
<P align="left">
<B>Figure 2</B> Adding a line area with first
footnote.
</P>
<P align="center"><IMG alt="Columns after adding first footnote" border="0" hspace="4" src="line-area-5.png" vspace="4"></P>
<P align="left">
Columns are balanced dynamically in the galley preliminary
layout. While the galley retains its basic linear
structure, the accompanying data structures accomplish
column distribution and balancing. As each line-area is
added, the columns are re-balanced. <B>N.B.</B>
This re-balancing involves only some of the dynamic data
associated with the participating galley(s). The data
structures associating breakpoints with the beginning and
end of individual line areas does not change in
re-balancing; only the association of line-area with column,
and, possibly, the various impact values for each line-area.
<BR><BR>
<B>Figure 3</B> Adding a line area with next
footnote.
</P>
<P align="center"><IMG alt="Columns after adding next footnote" border="0" hspace="4" src="line-area-6.png" vspace="4"></P>
</FONT></TD></TR></TABLE></DIV><BR>
<DIV align="right"><TABLE border="0" cellpadding="0" cellspacing="0" width="95%"><TR><TD align="right" height="7" valign="bottom" width="9"><IMG border="0" height="7" hspace="0" src="resources/bar-top-left.gif" vspace="0" width="9"></TD><TD background="resources/bar-border-top.gif"><IMG border="0" height="5" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD><TD align="left" height="7" valign="bottom" width="9"><IMG border="0" height="7" hspace="0" src="resources/bar-top-right.gif" vspace="0" width="9"></TD></TR><TR><TD background="resources/bar-border-left.gif" width="9"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="9"></TD><TD bgcolor="#0086b2" width="100%"><FONT color="#ffffff" face="arial,helvetica,sanserif"><IMG border="0" height="5" hspace="0" src="resources/void.gif" vspace="0" width="5"><B>Layout managers in the flow of control</B></FONT></TD><TD background="resources/bar-border-right.gif" width="9"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="9"></TD></TR><TR><TD align="right" height="12" valign="top" width="9"><IMG border="0" height="12" hspace="0" src="resources/bar-bottom-left.gif" vspace="0" width="9"></TD><TD background="resources/bar-border-bottom.gif"><IMG border="0" height="12" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD><TD align="left" height="12" valign="top" width="9"><IMG border="0" height="12" hspace="0" src="resources/bar-bottom-right.gif" vspace="0" width="9"></TD></TR></TABLE><TABLE border="0" cellpadding="0" cellspacing="0" width="95%"><TR><TD><FONT color="#000000" face="arial,helvetica,sanserif">
<P><TABLE border="0" cellpadding="0" cellspacing="3" width="100%"><TR><TD valign="top" width="28"><IMG alt="Note" border="0" height="29" hspace="0" src="resources/note.gif" vspace="0" width="28"></TD><TD valign="top"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1"><I>To be developed.</I></FONT></TD></TR></TABLE></P>
</FONT></TD></TR></TABLE></DIV><BR>
</FONT></TD></TR></TABLE></DIV><BR>
</TD></TR></TABLE></TD></TR></TABLE><BR><TABLE border="0" cellpadding="0" cellspacing="0" width="100%"><TR><TD bgcolor="#0086b2"><IMG height="1" src="images/dot.gif" width="1"></TD></TR><TR><TD align="center"><FONT color="#0086b2" face="arial,helvetica,sanserif" size="-1"><I>
Copyright © 2001-2002 The Apache Software Foundation.
All Rights Reserved.
</I></FONT></TD></TR></TABLE></BODY></HTML>
1.1 xml-site/targets/fop/design/alt.design/galleys.html
Index: galleys.html
===================================================================
<HTML><HEAD><SCRIPT language="JavaScript" src="resources/script.js" type="text/javascript"></SCRIPT><TITLE>Galleys</TITLE></HEAD><BODY alink="#cc0000" bgcolor="#ffffff" leftmargin="4" link="#039acc" marginheight="4" marginwidth="4" text="#000000" topmargin="4" vlink="#0086b2"><TABLE border="0" cellpadding="0" cellspacing="0" width="100%"><TR><TD align="left" height="60" rowspan="3" valign="top" width="135"><IMG border="0" height="60" hspace="0" src="resources/logo.gif" vspace="0" width="135"></TD><TD align="left" background="resources/line.gif" colspan="2" height="5" valign="top" width="100%"><IMG align="left" border="0" height="5" hspace="0" src="resources/line.gif" vspace="0" width="1"></TD><TD align="left" height="60" rowspan="3" valign="top" width="29"><IMG border="0" height="60" hspace="0" src="resources/right.gif" vspace="0" width="29"></TD></TR><TR><TD align="left" bgcolor="#0086b2" colspan="2" height="35" valign="top" width="100%"><IMG align="right" alt="" border="0" height="35" hspace="0" src="graphics/galleys-header.jpg" vspace="0" width="456"></TD></TR><TR><TD align="left" background="resources/bottom.gif" bgcolor="#0086b2" height="20" valign="top" width="100%"><IMG align="left" border="0" height="20" hspace="0" src="resources/bottom.gif" vspace="0" width="3"></TD><TD align="right" background="resources/bottom.gif" bgcolor="#0086b2" height="20" valign="top" width="288"><TABLE border="0" cellpadding="0" cellspacing="0" width="288"><TR><TD align="left" height="20" valign="top" width="96"><A href="http://xml.apache.org/" onMouseOut="rolloverOff('xml');" onMouseOver="rolloverOn('xml');" target="new"><IMG alt="http://xml.apache.org/" border="0" height="20" hspace="0" name="xml" onLoad="rolloverLoad('xml','resources/button-xml-hi.gif','resources/button-xml-lo.gif');" src="resources/button-xml-lo.gif" vspace="0" width="96"></A></TD><TD align="left" height="20" valign="top" width="96"><A href="http://www.apache.org/" onMouseOut="rolloverOff('asf');" onMouseOver="rolloverOn('asf');" target="new"><IMG alt="http://www.apache.org/" border="0" height="20" hspace="0" name="asf" onLoad="rolloverLoad('asf','resources/button-asf-hi.gif','resources/button-asf-lo.gif');" src="resources/button-asf-lo.gif" vspace="0" width="96"></A></TD><TD align="left" height="20" valign="top" width="96"><A href="http://www.w3.org/" onMouseOut="rolloverOff('w3c');" onMouseOver="rolloverOn('w3c');" target="new"><IMG alt="http://www.w3.org/" border="0" height="20" hspace="0" name="w3c" onLoad="rolloverLoad('w3c','resources/button-w3c-hi.gif','resources/button-w3c-lo.gif');" src="resources/button-w3c-lo.gif" vspace="0" width="96"></A></TD></TR></TABLE></TD></TR></TABLE><TABLE border="0" cellpadding="0" cellspacing="0" width="100%"><TR><TD align="left" valign="top" width="120"><IMG border="0" height="14" hspace="0" src="resources/join.gif" vspace="0" width="120"><BR>
<A href="http://xml.apache.org/fop/" onMouseOut="rolloverOff('side-ext-2');" onMouseOver="rolloverOn('side-ext-2');"><IMG alt="About FOP" border="0" height="12" hspace="0" name="side-ext-2" onLoad="rolloverLoad('side-ext-2','graphics/ext-2-label-2.jpg','graphics/ext-2-label-3.jpg');" src="graphics/ext-2-label-3.jpg" vspace="0" width="120"></A><BR>
<IMG border="0" height="6" hspace="0" src="resources/separator.gif" vspace="0" width="120"><BR>
<A href="../index.html" onMouseOut="rolloverOff('side-ext-6');" onMouseOver="rolloverOn('side-ext-6');"><IMG alt="NEW DESIGN" border="0" height="12" hspace="0" name="side-ext-6" onLoad="rolloverLoad('side-ext-6','graphics/ext-6-label-2.jpg','graphics/ext-6-label-3.jpg');" src="graphics/ext-6-label-3.jpg" vspace="0" width="120"></A><BR>
<IMG border="0" height="6" hspace="0" src="resources/separator.gif" vspace="0" width="120"><BR>
<A href="index.html" onMouseOut="rolloverOff('side-index');" onMouseOver="rolloverOn('side-index');"><IMG alt="co-routines" border="0" height="12" hspace="0" name="side-index" onLoad="rolloverLoad('side-index','graphics/index-label-2.jpg','graphics/index-label-3.jpg');" src="graphics/index-label-3.jpg" vspace="0" width="120"></A><BR>
<IMG alt="galleys" border="0" height="12" hspace="0" src="graphics/galleys-label-1.jpg" vspace="0" width="120"><BR>
<A href="footnotes.html" onMouseOut="rolloverOff('side-footnotes');" onMouseOver="rolloverOn('side-footnotes');"><IMG alt="footnotes" border="0" height="12" hspace="0" name="side-footnotes" onLoad="rolloverLoad('side-footnotes','graphics/footnotes-label-2.jpg','graphics/footnotes-label-3.jpg');" src="graphics/footnotes-label-3.jpg" vspace="0" width="120"></A><BR>
<A href="keeps.html" onMouseOut="rolloverOff('side-keeps');" onMouseOver="rolloverOn('side-keeps');"><IMG alt="keeps" border="0" height="12" hspace="0" name="side-keeps" onLoad="rolloverLoad('side-keeps','graphics/keeps-label-2.jpg','graphics/keeps-label-3.jpg');" src="graphics/keeps-label-3.jpg" vspace="0" width="120"></A><BR>
<A href="spaces.html" onMouseOut="rolloverOff('side-spaces');" onMouseOver="rolloverOn('side-spaces');"><IMG alt="space-specifiers" border="0" height="12" hspace="0" name="side-spaces" onLoad="rolloverLoad('side-spaces','graphics/spaces-label-2.jpg','graphics/spaces-label-3.jpg');" src="graphics/spaces-label-3.jpg" vspace="0" width="120"></A><BR>
<IMG border="0" height="6" hspace="0" src="resources/separator.gif" vspace="0" width="120"><BR>
<A href="alt.properties.html" onMouseOut="rolloverOff('side-alt.properties');" onMouseOver="rolloverOn('side-alt.properties');"><IMG alt="alt.properties" border="0" height="12" hspace="0" name="side-alt.properties" onLoad="rolloverLoad('side-alt.properties','graphics/alt.properties-label-2.jpg','graphics/alt.properties-label-3.jpg');" src="graphics/alt.properties-label-3.jpg" vspace="0" width="120"></A><BR>
<A href="classes-overview.html" onMouseOut="rolloverOff('side-classes-overview');" onMouseOver="rolloverOn('side-classes-overview');"><IMG alt="Classes overview" border="0" height="12" hspace="0" name="side-classes-overview" onLoad="rolloverLoad('side-classes-overview','graphics/classes-overview-label-2.jpg','graphics/classes-overview-label-3.jpg');" src="graphics/classes-overview-label-3.jpg" vspace="0" width="120"></A><BR>
<A href="properties-classes.html" onMouseOut="rolloverOff('side-properties-classes');" onMouseOver="rolloverOn('side-properties-classes');"><IMG alt="Properties classes" border="0" height="12" hspace="0" name="side-properties-classes" onLoad="rolloverLoad('side-properties-classes','graphics/properties-classes-label-2.jpg','graphics/properties-classes-label-3.jpg');" src="graphics/properties-classes-label-3.jpg" vspace="0" width="120"></A><BR>
<A href="Properties.html" onMouseOut="rolloverOff('side-Properties');" onMouseOver="rolloverOn('side-Properties');"><IMG alt="Properties" border="0" height="12" hspace="0" name="side-Properties" onLoad="rolloverLoad('side-Properties','graphics/Properties-label-2.jpg','graphics/Properties-label-3.jpg');" src="graphics/Properties-label-3.jpg" vspace="0" width="120"></A><BR>
<A href="PropertyConsts.html" onMouseOut="rolloverOff('side-PropertyConsts');" onMouseOver="rolloverOn('side-PropertyConsts');"><IMG alt="PropertyConsts" border="0" height="12" hspace="0" name="side-PropertyConsts" onLoad="rolloverLoad('side-PropertyConsts','graphics/PropertyConsts-label-2.jpg','graphics/PropertyConsts-label-3.jpg');" src="graphics/PropertyConsts-label-3.jpg" vspace="0" width="120"></A><BR>
<A href="PropNames.html" onMouseOut="rolloverOff('side-PropNames');" onMouseOver="rolloverOn('side-PropNames');"><IMG alt="PropNames" border="0" height="12" hspace="0" name="side-PropNames" onLoad="rolloverLoad('side-PropNames','graphics/PropNames-label-2.jpg','graphics/PropNames-label-3.jpg');" src="graphics/PropNames-label-3.jpg" vspace="0" width="120"></A><BR>
<A href="AbsolutePosition.html" onMouseOut="rolloverOff('side-AbsolutePosition');" onMouseOver="rolloverOn('side-AbsolutePosition');"><IMG alt="AbsolutePosition" border="0" height="12" hspace="0" name="side-AbsolutePosition" onLoad="rolloverLoad('side-AbsolutePosition','graphics/AbsolutePosition-label-2.jpg','graphics/AbsolutePosition-label-3.jpg');" src="graphics/AbsolutePosition-label-3.jpg" vspace="0" width="120"></A><BR>
<A href="VerticalAlign.html" onMouseOut="rolloverOff('side-VerticalAlign');" onMouseOver="rolloverOn('side-VerticalAlign');"><IMG alt="VerticalAlign" border="0" height="12" hspace="0" name="side-VerticalAlign" onLoad="rolloverLoad('side-VerticalAlign','graphics/VerticalAlign-label-2.jpg','graphics/VerticalAlign-label-3.jpg');" src="graphics/VerticalAlign-label-3.jpg" vspace="0" width="120"></A><BR>
<A href="BorderCommonStyle.html" onMouseOut="rolloverOff('side-BorderCommonStyle');" onMouseOver="rolloverOn('side-BorderCommonStyle');"><IMG alt="BorderCommonStyle" border="0" height="12" hspace="0" name="side-BorderCommonStyle" onLoad="rolloverLoad('side-BorderCommonStyle','graphics/BorderCommonStyle-label-2.jpg','graphics/BorderCommonStyle-label-3.jpg');" src="graphics/BorderCommonStyle-label-3.jpg" vspace="0" width="120"></A><BR>
<IMG border="0" height="6" hspace="0" src="resources/separator.gif" vspace="0" width="120"><BR>
<A href="xml-parsing.html" onMouseOut="rolloverOff('side-xml-parsing');" onMouseOver="rolloverOn('side-xml-parsing');"><IMG alt="XML parsing" border="0" height="12" hspace="0" name="side-xml-parsing" onLoad="rolloverLoad('side-xml-parsing','graphics/xml-parsing-label-2.jpg','graphics/xml-parsing-label-3.jpg');" src="graphics/xml-parsing-label-3.jpg" vspace="0" width="120"></A><BR>
<IMG border="0" height="6" hspace="0" src="resources/separator.gif" vspace="0" width="120"><BR>
<A href="property-parsing.html" onMouseOut="rolloverOff('side-property-parsing');" onMouseOver="rolloverOn('side-property-parsing');"><IMG alt="Property parsing" border="0" height="12" hspace="0" name="side-property-parsing" onLoad="rolloverLoad('side-property-parsing','graphics/property-parsing-label-2.jpg','graphics/property-parsing-label-3.jpg');" src="graphics/property-parsing-label-3.jpg" vspace="0" width="120"></A><BR>
<IMG border="0" height="6" hspace="0" src="resources/separator.gif" vspace="0" width="120"><BR>
<A href="compound-properties.html" onMouseOut="rolloverOff('side-compound-properties');" onMouseOver="rolloverOn('side-compound-properties');"><IMG alt="Compound properties" border="0" height="12" hspace="0" name="side-compound-properties" onLoad="rolloverLoad('side-compound-properties','graphics/compound-properties-label-2.jpg','graphics/compound-properties-label-3.jpg');" src="graphics/compound-properties-label-3.jpg" vspace="0" width="120"></A><BR>
<A href="traits.html" onMouseOut="rolloverOff('side-traits');" onMouseOver="rolloverOn('side-traits');"><IMG alt="Traits" border="0" height="12" hspace="0" name="side-traits" onLoad="rolloverLoad('side-traits','graphics/traits-label-2.jpg','graphics/traits-label-3.jpg');" src="graphics/traits-label-3.jpg" vspace="0" width="120"></A><BR>
<IMG border="0" height="14" hspace="0" src="resources/close.gif" vspace="0" width="120"><BR></TD><TD align="left" valign="top" width="*"><TABLE border="0" cellpadding="3" cellspacing="0"><TR><TD><BR>
<DIV align="right"><TABLE border="0" cellpadding="0" cellspacing="0" width="98%"><TR><TD align="right" height="7" valign="bottom" width="9"><IMG border="0" height="7" hspace="0" src="resources/bar-top-left.gif" vspace="0" width="9"></TD><TD background="resources/bar-border-top.gif"><IMG border="0" height="5" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD><TD align="left" height="7" valign="bottom" width="9"><IMG border="0" height="7" hspace="0" src="resources/bar-top-right.gif" vspace="0" width="9"></TD></TR><TR><TD background="resources/bar-border-left.gif" width="9"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="9"></TD><TD bgcolor="#0086b2" width="100%"><FONT color="#ffffff" face="arial,helvetica,sanserif" size="+1"><IMG border="0" height="5" hspace="0" src="resources/void.gif" vspace="0" width="5"><B>Layout galleys in FOP</B></FONT></TD><TD background="resources/bar-border-right.gif" width="9"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="9"></TD></TR><TR><TD align="right" height="12" valign="top" width="9"><IMG border="0" height="12" hspace="0" src="resources/bar-bottom-left.gif" vspace="0" width="9"></TD><TD background="resources/bar-border-bottom.gif"><IMG border="0" height="12" hspace="0" src="resources/void.gif" vspace="0"></TD><TD align="left" height="12" valign="top" width="9"><IMG border="0" height="12" hspace="0" src="resources/bar-bottom-right.gif" vspace="0" width="9"></TD></TR></TABLE><TABLE border="0" cellpadding="0" cellspacing="0" width="98%"><TR><TD><FONT color="#000000" face="arial,helvetica,sanserif">
<DIV align="right"><TABLE border="0" cellpadding="0" cellspacing="0" width="95%"><TR><TD align="right" height="7" valign="bottom" width="9"><IMG border="0" height="7" hspace="0" src="resources/bar-top-left.gif" vspace="0" width="9"></TD><TD background="resources/bar-border-top.gif"><IMG border="0" height="5" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD><TD align="left" height="7" valign="bottom" width="9"><IMG border="0" height="7" hspace="0" src="resources/bar-top-right.gif" vspace="0" width="9"></TD></TR><TR><TD background="resources/bar-border-left.gif" width="9"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="9"></TD><TD bgcolor="#0086b2" width="100%"><FONT color="#ffffff" face="arial,helvetica,sanserif"><IMG border="0" height="5" hspace="0" src="resources/void.gif" vspace="0" width="5"><B>Galleys in Lout</B></FONT></TD><TD background="resources/bar-border-right.gif" width="9"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="9"></TD></TR><TR><TD align="right" height="12" valign="top" width="9"><IMG border="0" height="12" hspace="0" src="resources/bar-bottom-left.gif" vspace="0" width="9"></TD><TD background="resources/bar-border-bottom.gif"><IMG border="0" height="12" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD><TD align="left" height="12" valign="top" width="9"><IMG border="0" height="12" hspace="0" src="resources/bar-bottom-right.gif" vspace="0" width="9"></TD></TR></TABLE><TABLE border="0" cellpadding="0" cellspacing="0" width="95%"><TR><TD><FONT color="#000000" face="arial,helvetica,sanserif">
<P align="left">
Jeffrey H. Kingston, in <A href="http://snark.niif.spb.su/~uwe/lout/design.pdf"><I>The
Design and Implementation of the Lout Document Formatting
Language</I> Section 5</A>, describes the
<B>galley</B> abstraction which he implemented in
<I>Lout</I>. A document to be formatted is a stream of
text and symbols, some of which are <B>receptive
symbols</B>. The output file is the first receptive
symbol; the formatting document is the first galley. The
archetypical example of a receptive symbol is
<B>@FootPlace</B> and its corresponding galley
definition, <B>@FootNote</B>.
</P>
<P align="left">
Each galley should be thought of as a concurrent process, and
each is associated with a semaphore (or synchronisation
object.) Galleys are free to "promote" components into
receptive targets as long as</P>
<BLOCKQUOTE><UL>
<LI>
an appropriate target has been encountered in the file,
</LI>
<LI>
the component being promoted contains no unresolved galley
targets itself, and
</LI>
<LI>
there is sufficient room for the galley component at the
target.
</LI>
</UL></BLOCKQUOTE>
<P align="left">
If these conditions are not met, the galley blocks on its
semaphore. When conditions change so that further progress
may be possible, the semaphore is signalled. Note that the
galleys are a hierarchy, and that the processing and
promotion of galley contents happens <I>bottom-up</I>.
</P>
</FONT></TD></TR></TABLE></DIV><BR>
<DIV align="right"><TABLE border="0" cellpadding="0" cellspacing="0" width="95%"><TR><TD align="right" height="7" valign="bottom" width="9"><IMG border="0" height="7" hspace="0" src="resources/bar-top-left.gif" vspace="0" width="9"></TD><TD background="resources/bar-border-top.gif"><IMG border="0" height="5" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD><TD align="left" height="7" valign="bottom" width="9"><IMG border="0" height="7" hspace="0" src="resources/bar-top-right.gif" vspace="0" width="9"></TD></TR><TR><TD background="resources/bar-border-left.gif" width="9"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="9"></TD><TD bgcolor="#0086b2" width="100%"><FONT color="#ffffff" face="arial,helvetica,sanserif"><IMG border="0" height="5" hspace="0" src="resources/void.gif" vspace="0" width="5"><B>Some features of galleys</B></FONT></TD><TD background="resources/bar-border-right.gif" width="9"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="9"></TD></TR><TR><TD align="right" height="12" valign="top" width="9"><IMG border="0" height="12" hspace="0" src="resources/bar-bottom-left.gif" vspace="0" width="9"></TD><TD background="resources/bar-border-bottom.gif"><IMG border="0" height="12" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD><TD align="left" height="12" valign="top" width="9"><IMG border="0" height="12" hspace="0" src="resources/bar-bottom-right.gif" vspace="0" width="9"></TD></TR></TABLE><TABLE border="0" cellpadding="0" cellspacing="0" width="95%"><TR><TD><FONT color="#000000" face="arial,helvetica,sanserif">
<P align="left">
It is essential to note that galleys are self-managing; they
are effectively layout <I>bots</I> which require only a
receptive area. If a galley fills a receptive area (say, at
the completion of a page), the galley will wait on its
semaphore, and will remain stalled until a new receptive
area is uncovered in the continued processing (say, as the
filled page is flushed to output and a new empty page is
generated.)
</P>
<P align="left">
Difficulties with this approach become evident when there
are mutual dependencies between receptive areas which
require negotiation between the respective galleys, and, in
some cases, arbitrary deadlock breaking when there is no
clear-cut resolution to conflicting demands. Footnote
processing and side floats are examples. A thornier example
is table column layout in <I>auto</I> mode, where the
column widths are determined by the contents. In
implementing galleys in FOP, these difficulties must be
taken into account, and some solutions proposed.
</P>
<P align="left">
Galleys model the whole of the process of creating the final
formatted output; the document as a whole is regarded as a
galley which flushes in to the output file.
</P>
</FONT></TD></TR></TABLE></DIV><BR>
<DIV align="right"><TABLE border="0" cellpadding="0" cellspacing="0" width="95%"><TR><TD align="right" height="7" valign="bottom" width="9"><IMG border="0" height="7" hspace="0" src="resources/bar-top-left.gif" vspace="0" width="9"></TD><TD background="resources/bar-border-top.gif"><IMG border="0" height="5" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD><TD align="left" height="7" valign="bottom" width="9"><IMG border="0" height="7" hspace="0" src="resources/bar-top-right.gif" vspace="0" width="9"></TD></TR><TR><TD background="resources/bar-border-left.gif" width="9"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="9"></TD><TD bgcolor="#0086b2" width="100%"><FONT color="#ffffff" face="arial,helvetica,sanserif"><IMG border="0" height="5" hspace="0" src="resources/void.gif" vspace="0" width="5"><B>The layout tree</B></FONT></TD><TD background="resources/bar-border-right.gif" width="9"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="9"></TD></TR><TR><TD align="right" height="12" valign="top" width="9"><IMG border="0" height="12" hspace="0" src="resources/bar-bottom-left.gif" vspace="0" width="9"></TD><TD background="resources/bar-border-bottom.gif"><IMG border="0" height="12" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD><TD align="left" height="12" valign="top" width="9"><IMG border="0" height="12" hspace="0" src="resources/bar-bottom-right.gif" vspace="0" width="9"></TD></TR></TABLE><TABLE border="0" cellpadding="0" cellspacing="0" width="95%"><TR><TD><FONT color="#000000" face="arial,helvetica,sanserif">
<A name="layout-tree"><!--anchor--></A>
<P align="left">
This proposal for implementing galleys in FOP makes use of a
<B>layout tree</B>. As with the <A href="../layout.html">layout managers</A><I></I> already
proposed, the layout tree acts as a bridge between the <A href="../fotree.html">FO Tree</A> and the <A href="../areatree.html">Area Tree</A>. If the elements of
the FO Tree are FO nodes, and the elements of the Area Tree
are Area nodes, representing areas to be drawn on the output
medium, the elements of the layout tree are <B>galley
nodes</B> and <B>area tree fragments</B>.
The area tree fragments are the final stages of the
resolution of the galleys; the output of the galleys will be
inserted directly into the Area Tree. The tree structure
makes it clear that the whole of the formatting process in
FOP, under this model, is a hierarchical series of galleys.
The dynamic data comes from fo:flow and fo:static-content,
and the higher-level receptive areas are derived from the
<I>layout-master-set</I>.
</P>
</FONT></TD></TR></TABLE></DIV><BR>
<DIV align="right"><TABLE border="0" cellpadding="0" cellspacing="0" width="95%"><TR><TD align="right" height="7" valign="bottom" width="9"><IMG border="0" height="7" hspace="0" src="resources/bar-top-left.gif" vspace="0" width="9"></TD><TD background="resources/bar-border-top.gif"><IMG border="0" height="5" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD><TD align="left" height="7" valign="bottom" width="9"><IMG border="0" height="7" hspace="0" src="resources/bar-top-right.gif" vspace="0" width="9"></TD></TR><TR><TD background="resources/bar-border-left.gif" width="9"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="9"></TD><TD bgcolor="#0086b2" width="100%"><FONT color="#ffffff" face="arial,helvetica,sanserif"><IMG border="0" height="5" hspace="0" src="resources/void.gif" vspace="0" width="5"><B>Processing galleys</B></FONT></TD><TD background="resources/bar-border-right.gif" width="9"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="9"></TD></TR><TR><TD align="right" height="12" valign="top" width="9"><IMG border="0" height="12" hspace="0" src="resources/bar-bottom-left.gif" vspace="0" width="9"></TD><TD background="resources/bar-border-bottom.gif"><IMG border="0" height="12" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD><TD align="left" height="12" valign="top" width="9"><IMG border="0" height="12" hspace="0" src="resources/bar-bottom-right.gif" vspace="0" width="9"></TD></TR></TABLE><TABLE border="0" cellpadding="0" cellspacing="0" width="95%"><TR><TD><FONT color="#000000" face="arial,helvetica,sanserif">
<P align="left">
Galleys are processed in two basic processing environments:
</P>
<DIV align="right"><TABLE border="0" cellpadding="0" cellspacing="0" width="90%"><TR><TD align="right" height="7" valign="bottom" width="9"><IMG border="0" height="7" hspace="0" src="resources/bar-top-left.gif" vspace="0" width="9"></TD><TD background="resources/bar-border-top.gif"><IMG border="0" height="5" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD><TD align="left" height="7" valign="bottom" width="9"><IMG border="0" height="7" hspace="0" src="resources/bar-top-right.gif" vspace="0" width="9"></TD></TR><TR><TD background="resources/bar-border-left.gif" width="9"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="9"></TD><TD bgcolor="#0086b2" width="100%"><FONT color="#ffffff" face="arial,helvetica,sanserif" size="-1"><IMG border="0" height="5" hspace="0" src="resources/void.gif" vspace="0" width="5"><B>Inline- and block-progression dimensions known</B></FONT></TD><TD background="resources/bar-border-right.gif" width="9"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="9"></TD></TR><TR><TD align="right" height="12" valign="top" width="9"><IMG border="0" height="12" hspace="0" src="resources/bar-bottom-left.gif" vspace="0" width="9"></TD><TD background="resources/bar-border-bottom.gif"><IMG border="0" height="12" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD><TD align="left" height="12" valign="top" width="9"><IMG border="0" height="12" hspace="0" src="resources/bar-bottom-right.gif" vspace="0" width="9"></TD></TR></TABLE><TABLE border="0" cellpadding="0" cellspacing="0" width="90%"><TR><TD><FONT color="#000000" face="arial,helvetica,sanserif">
<P align="left">
The galley at set-up is provided with both an
<I>inline-progression-dimension</I> (<I>i-p-d</I>) and
a <I>block-progression-dimension</I> (<I>b-p-d</I>).
In this case, no further intervention is necessary to lay
out the galley. The galley has the possibility of laying
itself out, creating all necessary area nodes. This does
not preclude the possibility that some children of this
galley will not be able to be so directly laid out, and
will fall into the second category.
</P>
<P align="left">
While the option of "automatic" layout exists, to use
such a method would relinquish the possibility of
monitoring the results of such layout and performing
fine-tuning.
</P>
</FONT></TD></TR></TABLE></DIV><BR>
<DIV align="right"><TABLE border="0" cellpadding="0" cellspacing="0" width="90%"><TR><TD align="right" height="7" valign="bottom" width="9"><IMG border="0" height="7" hspace="0" src="resources/bar-top-left.gif" vspace="0" width="9"></TD><TD background="resources/bar-border-top.gif"><IMG border="0" height="5" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD><TD align="left" height="7" valign="bottom" width="9"><IMG border="0" height="7" hspace="0" src="resources/bar-top-right.gif" vspace="0" width="9"></TD></TR><TR><TD background="resources/bar-border-left.gif" width="9"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="9"></TD><TD bgcolor="#0086b2" width="100%"><FONT color="#ffffff" face="arial,helvetica,sanserif" size="-1"><IMG border="0" height="5" hspace="0" src="resources/void.gif" vspace="0" width="5"><B>Inline- ior block-progression-dimensions unknown</B></FONT></TD><TD background="resources/bar-border-right.gif" width="9"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="9"></TD></TR><TR><TD align="right" height="12" valign="top" width="9"><IMG border="0" height="12" hspace="0" src="resources/bar-bottom-left.gif" vspace="0" width="9"></TD><TD background="resources/bar-border-bottom.gif"><IMG border="0" height="12" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD><TD align="left" height="12" valign="top" width="9"><IMG border="0" height="12" hspace="0" src="resources/bar-bottom-right.gif" vspace="0" width="9"></TD></TR></TABLE><TABLE border="0" cellpadding="0" cellspacing="0" width="90%"><TR><TD><FONT color="#000000" face="arial,helvetica,sanserif">
<P align="left">
The galley cannot immediately be provided with an i-p-d
ior a b-p-d. This will occur in some of the difficult
cases mentioned earlier. In these cases, the parent
galley acts as a layout manager, similar to the sense used
in <A href="../layout.html">another
discussion</A>. The children, lacking full receptive
area dimensions, will proceed with galley pre-processing,
a procedure which will, of necessity, be followed
recursively by all of its children down to the atomic
elements of the galley. These atomic elements are the
individual <I>fo:character</I> nodes and images of fixed
dimensions.
</P>
</FONT></TD></TR></TABLE></DIV><BR>
</FONT></TD></TR></TABLE></DIV><BR>
<DIV align="right"><TABLE border="0" cellpadding="0" cellspacing="0" width="95%"><TR><TD align="right" height="7" valign="bottom" width="9"><IMG border="0" height="7" hspace="0" src="resources/bar-top-left.gif" vspace="0" width="9"></TD><TD background="resources/bar-border-top.gif"><IMG border="0" height="5" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD><TD align="left" height="7" valign="bottom" width="9"><IMG border="0" height="7" hspace="0" src="resources/bar-top-right.gif" vspace="0" width="9"></TD></TR><TR><TD background="resources/bar-border-left.gif" width="9"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="9"></TD><TD bgcolor="#0086b2" width="100%"><FONT color="#ffffff" face="arial,helvetica,sanserif"><IMG border="0" height="5" hspace="0" src="resources/void.gif" vspace="0" width="5"><B>Galley pre-processing</B></FONT></TD><TD background="resources/bar-border-right.gif" width="9"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="9"></TD></TR><TR><TD align="right" height="12" valign="top" width="9"><IMG border="0" height="12" hspace="0" src="resources/bar-bottom-left.gif" vspace="0" width="9"></TD><TD background="resources/bar-border-bottom.gif"><IMG border="0" height="12" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD><TD align="left" height="12" valign="top" width="9"><IMG border="0" height="12" hspace="0" src="resources/bar-bottom-right.gif" vspace="0" width="9"></TD></TR></TABLE><TABLE border="0" cellpadding="0" cellspacing="0" width="95%"><TR><TD><FONT color="#000000" face="arial,helvetica,sanserif">
<A name="pre-processing"><!--anchor--></A>
<P align="left">
Galley pre-processing involves the spatial resolution of
objects from the flows to the greatest extent possible
without information on the dimensions of the target area.
Line-areas have a block progression dimension which is
determined by their contents. To achieve full generality in
layouts of indeterminate dimensions, the contents of
line-areas should be laid out as though their inline
progression dimension were limited only by their content.
In terms of inline-areas, galleys would process text and
resolve the dimensions of included images. Text would be
collected into runs with the same alignment
characteristics. In the process, all possible "natural" and
hyphenation break-points can be determined. Where a
line-area contains mixed fonts or embedded images, the b-p-d
of the individual line-areas which are eventually stacked
will, in general, depend on the line break points, but the
advantage of this approach is that such actual selections
can be backed out and new break points selected with a
minimum of re-calculation. This can potentially occur
whenever a first attempt at page layout is backed out.
<BR><BR>
<B>Figure 1</B>
</P>
<P align="center"><IMG alt="Galley pre-processing diagram" border="0" hspace="4" src="galley-preprocessing.png" vspace="4"></P>
<P align="left">
Once this pre-processing has been achieved, it is
envisaged that a layout manager might make requests to the
galley of its ability to fill an area of a given
inline-progression-dimension. A positive response would
be accompanied by the block-progression-dimension. The
other possibilities are a partial fill, which would also
require b-p-d data, and a failure due to insufficient
i-p-d, in which case the minimum i-p-d requirement would
be returned. Note that decisions about the
actual dimensions of line-areas to be filled can be
deferred until all options have been tested.
</P>
<P align="left">
The other primary form of information provided by a
pre-processed galley is its minimum and maximum i-p-d, so
that decisions can be made by the parent on the spacing of
table columns. Apart from information requests,
higher-level processes can either make requests of the
galleys for chunks of nominated sizes, or simply provide the
galley with an i-p-d and b-p-d, which will trigger the
flushing of the galley components into Area nodes. Until
they have flushed, the galleys must be able to respond to a
sequence of information requests, more or less in the manner
of a request iterator, and separately manage the flushing of
objects into the area tree. The purpose of the "request
iterator" would be to support "incremental" information
requests like <I>getNextBreakPosition</I>.
</P>
</FONT></TD></TR></TABLE></DIV><BR>
</FONT></TD></TR></TABLE></DIV><BR>
</TD></TR></TABLE></TD></TR></TABLE><BR><TABLE border="0" cellpadding="0" cellspacing="0" width="100%"><TR><TD bgcolor="#0086b2"><IMG height="1" src="images/dot.gif" width="1"></TD></TR><TR><TD align="center"><FONT color="#0086b2" face="arial,helvetica,sanserif" size="-1"><I>
Copyright © 2001-2002 The Apache Software Foundation.
All Rights Reserved.
</I></FONT></TD></TR></TABLE></BODY></HTML>
1.1 xml-site/targets/fop/design/alt.design/keeps.html
Index: keeps.html
===================================================================
<HTML><HEAD><SCRIPT language="JavaScript" src="resources/script.js" type="text/javascript"></SCRIPT><TITLE>Keeps and breaks</TITLE></HEAD><BODY alink="#cc0000" bgcolor="#ffffff" leftmargin="4" link="#039acc" marginheight="4" marginwidth="4" text="#000000" topmargin="4" vlink="#0086b2"><TABLE border="0" cellpadding="0" cellspacing="0" width="100%"><TR><TD align="left" height="60" rowspan="3" valign="top" width="135"><IMG border="0" height="60" hspace="0" src="resources/logo.gif" vspace="0" width="135"></TD><TD align="left" background="resources/line.gif" colspan="2" height="5" valign="top" width="100%"><IMG align="left" border="0" height="5" hspace="0" src="resources/line.gif" vspace="0" width="1"></TD><TD align="left" height="60" rowspan="3" valign="top" width="29"><IMG border="0" height="60" hspace="0" src="resources/right.gif" vspace="0" width="29"></TD></TR><TR><TD align="left" bgcolor="#0086b2" colspan="2" height="35" valign="top" width="100%"><IMG align="right" alt="" border="0" height="35" hspace="0" src="graphics/keeps-header.jpg" vspace="0" width="456"></TD></TR><TR><TD align="left" background="resources/bottom.gif" bgcolor="#0086b2" height="20" valign="top" width="100%"><IMG align="left" border="0" height="20" hspace="0" src="resources/bottom.gif" vspace="0" width="3"></TD><TD align="right" background="resources/bottom.gif" bgcolor="#0086b2" height="20" valign="top" width="288"><TABLE border="0" cellpadding="0" cellspacing="0" width="288"><TR><TD align="left" height="20" valign="top" width="96"><A href="http://xml.apache.org/" onMouseOut="rolloverOff('xml');" onMouseOver="rolloverOn('xml');" target="new"><IMG alt="http://xml.apache.org/" border="0" height="20" hspace="0" name="xml" onLoad="rolloverLoad('xml','resources/button-xml-hi.gif','resources/button-xml-lo.gif');" src="resources/button-xml-lo.gif" vspace="0" width="96"></A></TD><TD align="left" height="20" valign="top" width="96"><A href="http://www.apache.org/" onMouseOut="rolloverOff('asf');" onMouseOver="rolloverOn('asf');" target="new"><IMG alt="http://www.apache.org/" border="0" height="20" hspace="0" name="asf" onLoad="rolloverLoad('asf','resources/button-asf-hi.gif','resources/button-asf-lo.gif');" src="resources/button-asf-lo.gif" vspace="0" width="96"></A></TD><TD align="left" height="20" valign="top" width="96"><A href="http://www.w3.org/" onMouseOut="rolloverOff('w3c');" onMouseOver="rolloverOn('w3c');" target="new"><IMG alt="http://www.w3.org/" border="0" height="20" hspace="0" name="w3c" onLoad="rolloverLoad('w3c','resources/button-w3c-hi.gif','resources/button-w3c-lo.gif');" src="resources/button-w3c-lo.gif" vspace="0" width="96"></A></TD></TR></TABLE></TD></TR></TABLE><TABLE border="0" cellpadding="0" cellspacing="0" width="100%"><TR><TD align="left" valign="top" width="120"><IMG border="0" height="14" hspace="0" src="resources/join.gif" vspace="0" width="120"><BR>
<A href="http://xml.apache.org/fop/" onMouseOut="rolloverOff('side-ext-2');" onMouseOver="rolloverOn('side-ext-2');"><IMG alt="About FOP" border="0" height="12" hspace="0" name="side-ext-2" onLoad="rolloverLoad('side-ext-2','graphics/ext-2-label-2.jpg','graphics/ext-2-label-3.jpg');" src="graphics/ext-2-label-3.jpg" vspace="0" width="120"></A><BR>
<IMG border="0" height="6" hspace="0" src="resources/separator.gif" vspace="0" width="120"><BR>
<A href="../index.html" onMouseOut="rolloverOff('side-ext-6');" onMouseOver="rolloverOn('side-ext-6');"><IMG alt="NEW DESIGN" border="0" height="12" hspace="0" name="side-ext-6" onLoad="rolloverLoad('side-ext-6','graphics/ext-6-label-2.jpg','graphics/ext-6-label-3.jpg');" src="graphics/ext-6-label-3.jpg" vspace="0" width="120"></A><BR>
<IMG border="0" height="6" hspace="0" src="resources/separator.gif" vspace="0" width="120"><BR>
<A href="index.html" onMouseOut="rolloverOff('side-index');" onMouseOver="rolloverOn('side-index');"><IMG alt="co-routines" border="0" height="12" hspace="0" name="side-index" onLoad="rolloverLoad('side-index','graphics/index-label-2.jpg','graphics/index-label-3.jpg');" src="graphics/index-label-3.jpg" vspace="0" width="120"></A><BR>
<A href="galleys.html" onMouseOut="rolloverOff('side-galleys');" onMouseOver="rolloverOn('side-galleys');"><IMG alt="galleys" border="0" height="12" hspace="0" name="side-galleys" onLoad="rolloverLoad('side-galleys','graphics/galleys-label-2.jpg','graphics/galleys-label-3.jpg');" src="graphics/galleys-label-3.jpg" vspace="0" width="120"></A><BR>
<A href="footnotes.html" onMouseOut="rolloverOff('side-footnotes');" onMouseOver="rolloverOn('side-footnotes');"><IMG alt="footnotes" border="0" height="12" hspace="0" name="side-footnotes" onLoad="rolloverLoad('side-footnotes','graphics/footnotes-label-2.jpg','graphics/footnotes-label-3.jpg');" src="graphics/footnotes-label-3.jpg" vspace="0" width="120"></A><BR>
<IMG alt="keeps" border="0" height="12" hspace="0" src="graphics/keeps-label-1.jpg" vspace="0" width="120"><BR>
<A href="spaces.html" onMouseOut="rolloverOff('side-spaces');" onMouseOver="rolloverOn('side-spaces');"><IMG alt="space-specifiers" border="0" height="12" hspace="0" name="side-spaces" onLoad="rolloverLoad('side-spaces','graphics/spaces-label-2.jpg','graphics/spaces-label-3.jpg');" src="graphics/spaces-label-3.jpg" vspace="0" width="120"></A><BR>
<IMG border="0" height="6" hspace="0" src="resources/separator.gif" vspace="0" width="120"><BR>
<A href="alt.properties.html" onMouseOut="rolloverOff('side-alt.properties');" onMouseOver="rolloverOn('side-alt.properties');"><IMG alt="alt.properties" border="0" height="12" hspace="0" name="side-alt.properties" onLoad="rolloverLoad('side-alt.properties','graphics/alt.properties-label-2.jpg','graphics/alt.properties-label-3.jpg');" src="graphics/alt.properties-label-3.jpg" vspace="0" width="120"></A><BR>
<A href="classes-overview.html" onMouseOut="rolloverOff('side-classes-overview');" onMouseOver="rolloverOn('side-classes-overview');"><IMG alt="Classes overview" border="0" height="12" hspace="0" name="side-classes-overview" onLoad="rolloverLoad('side-classes-overview','graphics/classes-overview-label-2.jpg','graphics/classes-overview-label-3.jpg');" src="graphics/classes-overview-label-3.jpg" vspace="0" width="120"></A><BR>
<A href="properties-classes.html" onMouseOut="rolloverOff('side-properties-classes');" onMouseOver="rolloverOn('side-properties-classes');"><IMG alt="Properties classes" border="0" height="12" hspace="0" name="side-properties-classes" onLoad="rolloverLoad('side-properties-classes','graphics/properties-classes-label-2.jpg','graphics/properties-classes-label-3.jpg');" src="graphics/properties-classes-label-3.jpg" vspace="0" width="120"></A><BR>
<A href="Properties.html" onMouseOut="rolloverOff('side-Properties');" onMouseOver="rolloverOn('side-Properties');"><IMG alt="Properties" border="0" height="12" hspace="0" name="side-Properties" onLoad="rolloverLoad('side-Properties','graphics/Properties-label-2.jpg','graphics/Properties-label-3.jpg');" src="graphics/Properties-label-3.jpg" vspace="0" width="120"></A><BR>
<A href="PropertyConsts.html" onMouseOut="rolloverOff('side-PropertyConsts');" onMouseOver="rolloverOn('side-PropertyConsts');"><IMG alt="PropertyConsts" border="0" height="12" hspace="0" name="side-PropertyConsts" onLoad="rolloverLoad('side-PropertyConsts','graphics/PropertyConsts-label-2.jpg','graphics/PropertyConsts-label-3.jpg');" src="graphics/PropertyConsts-label-3.jpg" vspace="0" width="120"></A><BR>
<A href="PropNames.html" onMouseOut="rolloverOff('side-PropNames');" onMouseOver="rolloverOn('side-PropNames');"><IMG alt="PropNames" border="0" height="12" hspace="0" name="side-PropNames" onLoad="rolloverLoad('side-PropNames','graphics/PropNames-label-2.jpg','graphics/PropNames-label-3.jpg');" src="graphics/PropNames-label-3.jpg" vspace="0" width="120"></A><BR>
<A href="AbsolutePosition.html" onMouseOut="rolloverOff('side-AbsolutePosition');" onMouseOver="rolloverOn('side-AbsolutePosition');"><IMG alt="AbsolutePosition" border="0" height="12" hspace="0" name="side-AbsolutePosition" onLoad="rolloverLoad('side-AbsolutePosition','graphics/AbsolutePosition-label-2.jpg','graphics/AbsolutePosition-label-3.jpg');" src="graphics/AbsolutePosition-label-3.jpg" vspace="0" width="120"></A><BR>
<A href="VerticalAlign.html" onMouseOut="rolloverOff('side-VerticalAlign');" onMouseOver="rolloverOn('side-VerticalAlign');"><IMG alt="VerticalAlign" border="0" height="12" hspace="0" name="side-VerticalAlign" onLoad="rolloverLoad('side-VerticalAlign','graphics/VerticalAlign-label-2.jpg','graphics/VerticalAlign-label-3.jpg');" src="graphics/VerticalAlign-label-3.jpg" vspace="0" width="120"></A><BR>
<A href="BorderCommonStyle.html" onMouseOut="rolloverOff('side-BorderCommonStyle');" onMouseOver="rolloverOn('side-BorderCommonStyle');"><IMG alt="BorderCommonStyle" border="0" height="12" hspace="0" name="side-BorderCommonStyle" onLoad="rolloverLoad('side-BorderCommonStyle','graphics/BorderCommonStyle-label-2.jpg','graphics/BorderCommonStyle-label-3.jpg');" src="graphics/BorderCommonStyle-label-3.jpg" vspace="0" width="120"></A><BR>
<IMG border="0" height="6" hspace="0" src="resources/separator.gif" vspace="0" width="120"><BR>
<A href="xml-parsing.html" onMouseOut="rolloverOff('side-xml-parsing');" onMouseOver="rolloverOn('side-xml-parsing');"><IMG alt="XML parsing" border="0" height="12" hspace="0" name="side-xml-parsing" onLoad="rolloverLoad('side-xml-parsing','graphics/xml-parsing-label-2.jpg','graphics/xml-parsing-label-3.jpg');" src="graphics/xml-parsing-label-3.jpg" vspace="0" width="120"></A><BR>
<IMG border="0" height="6" hspace="0" src="resources/separator.gif" vspace="0" width="120"><BR>
<A href="property-parsing.html" onMouseOut="rolloverOff('side-property-parsing');" onMouseOver="rolloverOn('side-property-parsing');"><IMG alt="Property parsing" border="0" height="12" hspace="0" name="side-property-parsing" onLoad="rolloverLoad('side-property-parsing','graphics/property-parsing-label-2.jpg','graphics/property-parsing-label-3.jpg');" src="graphics/property-parsing-label-3.jpg" vspace="0" width="120"></A><BR>
<IMG border="0" height="6" hspace="0" src="resources/separator.gif" vspace="0" width="120"><BR>
<A href="compound-properties.html" onMouseOut="rolloverOff('side-compound-properties');" onMouseOver="rolloverOn('side-compound-properties');"><IMG alt="Compound properties" border="0" height="12" hspace="0" name="side-compound-properties" onLoad="rolloverLoad('side-compound-properties','graphics/compound-properties-label-2.jpg','graphics/compound-properties-label-3.jpg');" src="graphics/compound-properties-label-3.jpg" vspace="0" width="120"></A><BR>
<A href="traits.html" onMouseOut="rolloverOff('side-traits');" onMouseOver="rolloverOn('side-traits');"><IMG alt="Traits" border="0" height="12" hspace="0" name="side-traits" onLoad="rolloverLoad('side-traits','graphics/traits-label-2.jpg','graphics/traits-label-3.jpg');" src="graphics/traits-label-3.jpg" vspace="0" width="120"></A><BR>
<IMG border="0" height="14" hspace="0" src="resources/close.gif" vspace="0" width="120"><BR></TD><TD align="left" valign="top" width="*"><TABLE border="0" cellpadding="3" cellspacing="0"><TR><TD><BR>
<DIV align="right"><TABLE border="0" cellpadding="0" cellspacing="0" width="98%"><TR><TD align="right" height="7" valign="bottom" width="9"><IMG border="0" height="7" hspace="0" src="resources/bar-top-left.gif" vspace="0" width="9"></TD><TD background="resources/bar-border-top.gif"><IMG border="0" height="5" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD><TD align="left" height="7" valign="bottom" width="9"><IMG border="0" height="7" hspace="0" src="resources/bar-top-right.gif" vspace="0" width="9"></TD></TR><TR><TD background="resources/bar-border-left.gif" width="9"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="9"></TD><TD bgcolor="#0086b2" width="100%"><FONT color="#ffffff" face="arial,helvetica,sanserif" size="+1"><IMG border="0" height="5" hspace="0" src="resources/void.gif" vspace="0" width="5"><B>Keeps and breaks in layout galleys</B></FONT></TD><TD background="resources/bar-border-right.gif" width="9"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="9"></TD></TR><TR><TD align="right" height="12" valign="top" width="9"><IMG border="0" height="12" hspace="0" src="resources/bar-bottom-left.gif" vspace="0" width="9"></TD><TD background="resources/bar-border-bottom.gif"><IMG border="0" height="12" hspace="0" src="resources/void.gif" vspace="0"></TD><TD align="left" height="12" valign="top" width="9"><IMG border="0" height="12" hspace="0" src="resources/bar-bottom-right.gif" vspace="0" width="9"></TD></TR></TABLE><TABLE border="0" cellpadding="0" cellspacing="0" width="98%"><TR><TD><FONT color="#000000" face="arial,helvetica,sanserif">
<P align="left">
The <A href="galleys.html">layout galleys</A> and the
<A href="galleys.html#layout-tree">layout tree</A>
which is their context have been discussed elsewhere. Here we
discuss a possible method of implementing keeps and breaks
within the context of layout galleys and the layout tree.
</P>
<DIV align="right"><TABLE border="0" cellpadding="0" cellspacing="0" width="95%"><TR><TD align="right" height="7" valign="bottom" width="9"><IMG border="0" height="7" hspace="0" src="resources/bar-top-left.gif" vspace="0" width="9"></TD><TD background="resources/bar-border-top.gif"><IMG border="0" height="5" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD><TD align="left" height="7" valign="bottom" width="9"><IMG border="0" height="7" hspace="0" src="resources/bar-top-right.gif" vspace="0" width="9"></TD></TR><TR><TD background="resources/bar-border-left.gif" width="9"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="9"></TD><TD bgcolor="#0086b2" width="100%"><FONT color="#ffffff" face="arial,helvetica,sanserif"><IMG border="0" height="5" hspace="0" src="resources/void.gif" vspace="0" width="5"><B>Breaks</B></FONT></TD><TD background="resources/bar-border-right.gif" width="9"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="9"></TD></TR><TR><TD align="right" height="12" valign="top" width="9"><IMG border="0" height="12" hspace="0" src="resources/bar-bottom-left.gif" vspace="0" width="9"></TD><TD background="resources/bar-border-bottom.gif"><IMG border="0" height="12" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD><TD align="left" height="12" valign="top" width="9"><IMG border="0" height="12" hspace="0" src="resources/bar-bottom-right.gif" vspace="0" width="9"></TD></TR></TABLE><TABLE border="0" cellpadding="0" cellspacing="0" width="95%"><TR><TD><FONT color="#000000" face="arial,helvetica,sanserif">
<P align="left">
Breaks may be handled by inserting a column- or page-break
pseudo-object into the galley stream. For break-before, the
object would be inserted before the area in which the flow
object, to which the property is attached, is leading. If
the flow object is leading in no ancestor context, the
pseudo-object is inserted before the object itself.
Corresponding considerations apply for break-after.
Selection of the position for these objects will be further
examined in the discussion on keeps.
</P>
</FONT></TD></TR></TABLE></DIV><BR>
<DIV align="right"><TABLE border="0" cellpadding="0" cellspacing="0" width="95%"><TR><TD align="right" height="7" valign="bottom" width="9"><IMG border="0" height="7" hspace="0" src="resources/bar-top-left.gif" vspace="0" width="9"></TD><TD background="resources/bar-border-top.gif"><IMG border="0" height="5" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD><TD align="left" height="7" valign="bottom" width="9"><IMG border="0" height="7" hspace="0" src="resources/bar-top-right.gif" vspace="0" width="9"></TD></TR><TR><TD background="resources/bar-border-left.gif" width="9"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="9"></TD><TD bgcolor="#0086b2" width="100%"><FONT color="#ffffff" face="arial,helvetica,sanserif"><IMG border="0" height="5" hspace="0" src="resources/void.gif" vspace="0" width="5"><B>Keeps</B></FONT></TD><TD background="resources/bar-border-right.gif" width="9"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="9"></TD></TR><TR><TD align="right" height="12" valign="top" width="9"><IMG border="0" height="12" hspace="0" src="resources/bar-bottom-left.gif" vspace="0" width="9"></TD><TD background="resources/bar-border-bottom.gif"><IMG border="0" height="12" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD><TD align="left" height="12" valign="top" width="9"><IMG border="0" height="12" hspace="0" src="resources/bar-bottom-right.gif" vspace="0" width="9"></TD></TR></TABLE><TABLE border="0" cellpadding="0" cellspacing="0" width="95%"><TR><TD><FONT color="#000000" face="arial,helvetica,sanserif">
<P align="left">
Conceptually, all keeps can be represented by a
keep-together pseudo-area. The keep-together property
itself is expressed during layout by wrapping all of the
generated areas in a keep-together area. Keep-with-previous
on formatting object A becomes a keep-together area spanning
the first non-blank normal area leaf node, L, generated by A
or its offspring, and the last non-blank normal area leaf
node preceding L in the area tree. Likewise, keep-with-next
on formatting object A becomes a keep-together area spanning
the last non-blank normal area leaf node, L, generated by A
or its offspring, and the first non-blank normal area leaf
node following L in the area tree.
<BR>TODO REWORK THIS for block vs inline
</P>
<P align="left">
The obvious problem with this arrangement is that the
keep-together area violate the hierarachical arrangement of
the layout tree. They form a concurrent structure focussed
on the leaf nodes. This seems to be the essential problem
of handling keep-with-(previous/next); that it cuts across
the otherwise tree-structured flow of processing. Such
problems are endemic in page layout.
</P>
<P align="left">
In any case, it seems that the relationships between areas
that are of interest in keep processing need some form of
direct expression, parallel to the layout tree itself.
Restricting ourselves too block-level elements, and looking
only at the simple block stacking cases, we get a diagram
like the attached PNG. In order to track the relationships
through the tree, we need four sets of links.
</P>
<P align="left">
<B>Figure 1</B>
</P>
<A name="Figure1"><!--anchor--></A>
<P align="center"><IMG alt="Simple block-stacking diagram" border="0" hspace="4" src="block-stacking.png" vspace="4"></P>
<P align="left">
The three basic links are:
</P>
<BLOCKQUOTE><UL>
<LI>Leading edge to leading edge of first normal child.</LI>
<LI>Trailing edge to leading edge of next normal
sibling.</LI>
<LI>Trailing edge to trailing edge of parent.</LI>
</UL></BLOCKQUOTE>
<P align="left">
Superimposed on the basic links are bridging links which
span adjacent sets of links. These spanning links are the
tree violators, and give direct access to the areas which
are of interest in keep processing. They could be
implemented as double-linked lists, either within the layout
tree nodes or as separate structures. Gaps in the spanning
links are joined by simply reproducing the single links, as
in the diagram. The whole layout tree for a page is
effectively threaded in order of interest, as far as keeps
are concerned.
</P>
<P align="left">
The bonus of this structure is that it looks like a superset
of the stacking constraints. It gives direct access to all
sets of adjacent edges and sets of edges whose space
specifiers need to be resolved. Fences can be easily enough
detected during the process of space resolution.
</P>
</FONT></TD></TR></TABLE></DIV><BR>
</FONT></TD></TR></TABLE></DIV><BR>
</TD></TR></TABLE></TD></TR></TABLE><BR><TABLE border="0" cellpadding="0" cellspacing="0" width="100%"><TR><TD bgcolor="#0086b2"><IMG height="1" src="images/dot.gif" width="1"></TD></TR><TR><TD align="center"><FONT color="#0086b2" face="arial,helvetica,sanserif" size="-1"><I>
Copyright © 2001-2002 The Apache Software Foundation.
All Rights Reserved.
</I></FONT></TD></TR></TABLE></BODY></HTML>
1.1 xml-site/targets/fop/design/alt.design/spaces.html
Index: spaces.html
===================================================================
<HTML><HEAD><SCRIPT language="JavaScript" src="resources/script.js" type="text/javascript"></SCRIPT><TITLE>Keeps and space-specifiers</TITLE></HEAD><BODY alink="#cc0000" bgcolor="#ffffff" leftmargin="4" link="#039acc" marginheight="4" marginwidth="4" text="#000000" topmargin="4" vlink="#0086b2"><TABLE border="0" cellpadding="0" cellspacing="0" width="100%"><TR><TD align="left" height="60" rowspan="3" valign="top" width="135"><IMG border="0" height="60" hspace="0" src="resources/logo.gif" vspace="0" width="135"></TD><TD align="left" background="resources/line.gif" colspan="2" height="5" valign="top" width="100%"><IMG align="left" border="0" height="5" hspace="0" src="resources/line.gif" vspace="0" width="1"></TD><TD align="left" height="60" rowspan="3" valign="top" width="29"><IMG border="0" height="60" hspace="0" src="resources/right.gif" vspace="0" width="29"></TD></TR><TR><TD align="left" bgcolor="#0086b2" colspan="2" height="35" valign="top" width="100%"><IMG align="right" alt="" border="0" height="35" hspace="0" src="graphics/spaces-header.jpg" vspace="0" width="456"></TD></TR><TR><TD align="left" background="resources/bottom.gif" bgcolor="#0086b2" height="20" valign="top" width="100%"><IMG align="left" border="0" height="20" hspace="0" src="resources/bottom.gif" vspace="0" width="3"></TD><TD align="right" background="resources/bottom.gif" bgcolor="#0086b2" height="20" valign="top" width="288"><TABLE border="0" cellpadding="0" cellspacing="0" width="288"><TR><TD align="left" height="20" valign="top" width="96"><A href="http://xml.apache.org/" onMouseOut="rolloverOff('xml');" onMouseOver="rolloverOn('xml');" target="new"><IMG alt="http://xml.apache.org/" border="0" height="20" hspace="0" name="xml" onLoad="rolloverLoad('xml','resources/button-xml-hi.gif','resources/button-xml-lo.gif');" src="resources/button-xml-lo.gif" vspace="0" width="96"></A></TD><TD align="left" height="20" valign="top" width="96"><A href="http://www.apache.org/" onMouseOut="rolloverOff('asf');" onMouseOver="rolloverOn('asf');" target="new"><IMG alt="http://www.apache.org/" border="0" height="20" hspace="0" name="asf" onLoad="rolloverLoad('asf','resources/button-asf-hi.gif','resources/button-asf-lo.gif');" src="resources/button-asf-lo.gif" vspace="0" width="96"></A></TD><TD align="left" height="20" valign="top" width="96"><A href="http://www.w3.org/" onMouseOut="rolloverOff('w3c');" onMouseOver="rolloverOn('w3c');" target="new"><IMG alt="http://www.w3.org/" border="0" height="20" hspace="0" name="w3c" onLoad="rolloverLoad('w3c','resources/button-w3c-hi.gif','resources/button-w3c-lo.gif');" src="resources/button-w3c-lo.gif" vspace="0" width="96"></A></TD></TR></TABLE></TD></TR></TABLE><TABLE border="0" cellpadding="0" cellspacing="0" width="100%"><TR><TD align="left" valign="top" width="120"><IMG border="0" height="14" hspace="0" src="resources/join.gif" vspace="0" width="120"><BR>
<A href="http://xml.apache.org/fop/" onMouseOut="rolloverOff('side-ext-2');" onMouseOver="rolloverOn('side-ext-2');"><IMG alt="About FOP" border="0" height="12" hspace="0" name="side-ext-2" onLoad="rolloverLoad('side-ext-2','graphics/ext-2-label-2.jpg','graphics/ext-2-label-3.jpg');" src="graphics/ext-2-label-3.jpg" vspace="0" width="120"></A><BR>
<IMG border="0" height="6" hspace="0" src="resources/separator.gif" vspace="0" width="120"><BR>
<A href="../index.html" onMouseOut="rolloverOff('side-ext-6');" onMouseOver="rolloverOn('side-ext-6');"><IMG alt="NEW DESIGN" border="0" height="12" hspace="0" name="side-ext-6" onLoad="rolloverLoad('side-ext-6','graphics/ext-6-label-2.jpg','graphics/ext-6-label-3.jpg');" src="graphics/ext-6-label-3.jpg" vspace="0" width="120"></A><BR>
<IMG border="0" height="6" hspace="0" src="resources/separator.gif" vspace="0" width="120"><BR>
<A href="index.html" onMouseOut="rolloverOff('side-index');" onMouseOver="rolloverOn('side-index');"><IMG alt="co-routines" border="0" height="12" hspace="0" name="side-index" onLoad="rolloverLoad('side-index','graphics/index-label-2.jpg','graphics/index-label-3.jpg');" src="graphics/index-label-3.jpg" vspace="0" width="120"></A><BR>
<A href="galleys.html" onMouseOut="rolloverOff('side-galleys');" onMouseOver="rolloverOn('side-galleys');"><IMG alt="galleys" border="0" height="12" hspace="0" name="side-galleys" onLoad="rolloverLoad('side-galleys','graphics/galleys-label-2.jpg','graphics/galleys-label-3.jpg');" src="graphics/galleys-label-3.jpg" vspace="0" width="120"></A><BR>
<A href="footnotes.html" onMouseOut="rolloverOff('side-footnotes');" onMouseOver="rolloverOn('side-footnotes');"><IMG alt="footnotes" border="0" height="12" hspace="0" name="side-footnotes" onLoad="rolloverLoad('side-footnotes','graphics/footnotes-label-2.jpg','graphics/footnotes-label-3.jpg');" src="graphics/footnotes-label-3.jpg" vspace="0" width="120"></A><BR>
<A href="keeps.html" onMouseOut="rolloverOff('side-keeps');" onMouseOver="rolloverOn('side-keeps');"><IMG alt="keeps" border="0" height="12" hspace="0" name="side-keeps" onLoad="rolloverLoad('side-keeps','graphics/keeps-label-2.jpg','graphics/keeps-label-3.jpg');" src="graphics/keeps-label-3.jpg" vspace="0" width="120"></A><BR>
<IMG alt="space-specifiers" border="0" height="12" hspace="0" src="graphics/spaces-label-1.jpg" vspace="0" width="120"><BR>
<IMG border="0" height="6" hspace="0" src="resources/separator.gif" vspace="0" width="120"><BR>
<A href="alt.properties.html" onMouseOut="rolloverOff('side-alt.properties');" onMouseOver="rolloverOn('side-alt.properties');"><IMG alt="alt.properties" border="0" height="12" hspace="0" name="side-alt.properties" onLoad="rolloverLoad('side-alt.properties','graphics/alt.properties-label-2.jpg','graphics/alt.properties-label-3.jpg');" src="graphics/alt.properties-label-3.jpg" vspace="0" width="120"></A><BR>
<A href="classes-overview.html" onMouseOut="rolloverOff('side-classes-overview');" onMouseOver="rolloverOn('side-classes-overview');"><IMG alt="Classes overview" border="0" height="12" hspace="0" name="side-classes-overview" onLoad="rolloverLoad('side-classes-overview','graphics/classes-overview-label-2.jpg','graphics/classes-overview-label-3.jpg');" src="graphics/classes-overview-label-3.jpg" vspace="0" width="120"></A><BR>
<A href="properties-classes.html" onMouseOut="rolloverOff('side-properties-classes');" onMouseOver="rolloverOn('side-properties-classes');"><IMG alt="Properties classes" border="0" height="12" hspace="0" name="side-properties-classes" onLoad="rolloverLoad('side-properties-classes','graphics/properties-classes-label-2.jpg','graphics/properties-classes-label-3.jpg');" src="graphics/properties-classes-label-3.jpg" vspace="0" width="120"></A><BR>
<A href="Properties.html" onMouseOut="rolloverOff('side-Properties');" onMouseOver="rolloverOn('side-Properties');"><IMG alt="Properties" border="0" height="12" hspace="0" name="side-Properties" onLoad="rolloverLoad('side-Properties','graphics/Properties-label-2.jpg','graphics/Properties-label-3.jpg');" src="graphics/Properties-label-3.jpg" vspace="0" width="120"></A><BR>
<A href="PropertyConsts.html" onMouseOut="rolloverOff('side-PropertyConsts');" onMouseOver="rolloverOn('side-PropertyConsts');"><IMG alt="PropertyConsts" border="0" height="12" hspace="0" name="side-PropertyConsts" onLoad="rolloverLoad('side-PropertyConsts','graphics/PropertyConsts-label-2.jpg','graphics/PropertyConsts-label-3.jpg');" src="graphics/PropertyConsts-label-3.jpg" vspace="0" width="120"></A><BR>
<A href="PropNames.html" onMouseOut="rolloverOff('side-PropNames');" onMouseOver="rolloverOn('side-PropNames');"><IMG alt="PropNames" border="0" height="12" hspace="0" name="side-PropNames" onLoad="rolloverLoad('side-PropNames','graphics/PropNames-label-2.jpg','graphics/PropNames-label-3.jpg');" src="graphics/PropNames-label-3.jpg" vspace="0" width="120"></A><BR>
<A href="AbsolutePosition.html" onMouseOut="rolloverOff('side-AbsolutePosition');" onMouseOver="rolloverOn('side-AbsolutePosition');"><IMG alt="AbsolutePosition" border="0" height="12" hspace="0" name="side-AbsolutePosition" onLoad="rolloverLoad('side-AbsolutePosition','graphics/AbsolutePosition-label-2.jpg','graphics/AbsolutePosition-label-3.jpg');" src="graphics/AbsolutePosition-label-3.jpg" vspace="0" width="120"></A><BR>
<A href="VerticalAlign.html" onMouseOut="rolloverOff('side-VerticalAlign');" onMouseOver="rolloverOn('side-VerticalAlign');"><IMG alt="VerticalAlign" border="0" height="12" hspace="0" name="side-VerticalAlign" onLoad="rolloverLoad('side-VerticalAlign','graphics/VerticalAlign-label-2.jpg','graphics/VerticalAlign-label-3.jpg');" src="graphics/VerticalAlign-label-3.jpg" vspace="0" width="120"></A><BR>
<A href="BorderCommonStyle.html" onMouseOut="rolloverOff('side-BorderCommonStyle');" onMouseOver="rolloverOn('side-BorderCommonStyle');"><IMG alt="BorderCommonStyle" border="0" height="12" hspace="0" name="side-BorderCommonStyle" onLoad="rolloverLoad('side-BorderCommonStyle','graphics/BorderCommonStyle-label-2.jpg','graphics/BorderCommonStyle-label-3.jpg');" src="graphics/BorderCommonStyle-label-3.jpg" vspace="0" width="120"></A><BR>
<IMG border="0" height="6" hspace="0" src="resources/separator.gif" vspace="0" width="120"><BR>
<A href="xml-parsing.html" onMouseOut="rolloverOff('side-xml-parsing');" onMouseOver="rolloverOn('side-xml-parsing');"><IMG alt="XML parsing" border="0" height="12" hspace="0" name="side-xml-parsing" onLoad="rolloverLoad('side-xml-parsing','graphics/xml-parsing-label-2.jpg','graphics/xml-parsing-label-3.jpg');" src="graphics/xml-parsing-label-3.jpg" vspace="0" width="120"></A><BR>
<IMG border="0" height="6" hspace="0" src="resources/separator.gif" vspace="0" width="120"><BR>
<A href="property-parsing.html" onMouseOut="rolloverOff('side-property-parsing');" onMouseOver="rolloverOn('side-property-parsing');"><IMG alt="Property parsing" border="0" height="12" hspace="0" name="side-property-parsing" onLoad="rolloverLoad('side-property-parsing','graphics/property-parsing-label-2.jpg','graphics/property-parsing-label-3.jpg');" src="graphics/property-parsing-label-3.jpg" vspace="0" width="120"></A><BR>
<IMG border="0" height="6" hspace="0" src="resources/separator.gif" vspace="0" width="120"><BR>
<A href="compound-properties.html" onMouseOut="rolloverOff('side-compound-properties');" onMouseOver="rolloverOn('side-compound-properties');"><IMG alt="Compound properties" border="0" height="12" hspace="0" name="side-compound-properties" onLoad="rolloverLoad('side-compound-properties','graphics/compound-properties-label-2.jpg','graphics/compound-properties-label-3.jpg');" src="graphics/compound-properties-label-3.jpg" vspace="0" width="120"></A><BR>
<A href="traits.html" onMouseOut="rolloverOff('side-traits');" onMouseOver="rolloverOn('side-traits');"><IMG alt="Traits" border="0" height="12" hspace="0" name="side-traits" onLoad="rolloverLoad('side-traits','graphics/traits-label-2.jpg','graphics/traits-label-3.jpg');" src="graphics/traits-label-3.jpg" vspace="0" width="120"></A><BR>
<IMG border="0" height="14" hspace="0" src="resources/close.gif" vspace="0" width="120"><BR></TD><TD align="left" valign="top" width="*"><TABLE border="0" cellpadding="3" cellspacing="0"><TR><TD><BR>
<DIV align="right"><TABLE border="0" cellpadding="0" cellspacing="0" width="98%"><TR><TD align="right" height="7" valign="bottom" width="9"><IMG border="0" height="7" hspace="0" src="resources/bar-top-left.gif" vspace="0" width="9"></TD><TD background="resources/bar-border-top.gif"><IMG border="0" height="5" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD><TD align="left" height="7" valign="bottom" width="9"><IMG border="0" height="7" hspace="0" src="resources/bar-top-right.gif" vspace="0" width="9"></TD></TR><TR><TD background="resources/bar-border-left.gif" width="9"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="9"></TD><TD bgcolor="#0086b2" width="100%"><FONT color="#ffffff" face="arial,helvetica,sanserif" size="+1"><IMG border="0" height="5" hspace="0" src="resources/void.gif" vspace="0" width="5"><B>Keeps and space-specifiers in layout galleys</B></FONT></TD><TD background="resources/bar-border-right.gif" width="9"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="9"></TD></TR><TR><TD align="right" height="12" valign="top" width="9"><IMG border="0" height="12" hspace="0" src="resources/bar-bottom-left.gif" vspace="0" width="9"></TD><TD background="resources/bar-border-bottom.gif"><IMG border="0" height="12" hspace="0" src="resources/void.gif" vspace="0"></TD><TD align="left" height="12" valign="top" width="9"><IMG border="0" height="12" hspace="0" src="resources/bar-bottom-right.gif" vspace="0" width="9"></TD></TR></TABLE><TABLE border="0" cellpadding="0" cellspacing="0" width="98%"><TR><TD><FONT color="#000000" face="arial,helvetica,sanserif">
<P align="left">
The <A href="galleys.html">layout galleys</A> and the
<A href="galleys.html#layout-tree">layout tree</A>
which is the context of this discussion have been discussed
elsewhere. A <A href="keeps.html">previous document</A>
discussed data structures which might facilitate the lining of
blocks necessary to implement keeps. Here we discuss the
similarities between the keep data structures and those
required to implement space-specifier resolution.
</P>
<DIV align="right"><TABLE border="0" cellpadding="0" cellspacing="0" width="95%"><TR><TD align="right" height="7" valign="bottom" width="9"><IMG border="0" height="7" hspace="0" src="resources/bar-top-left.gif" vspace="0" width="9"></TD><TD background="resources/bar-border-top.gif"><IMG border="0" height="5" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD><TD align="left" height="7" valign="bottom" width="9"><IMG border="0" height="7" hspace="0" src="resources/bar-top-right.gif" vspace="0" width="9"></TD></TR><TR><TD background="resources/bar-border-left.gif" width="9"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="9"></TD><TD bgcolor="#0086b2" width="100%"><FONT color="#ffffff" face="arial,helvetica,sanserif"><IMG border="0" height="5" hspace="0" src="resources/void.gif" vspace="0" width="5"><B>Space-specifiers</B></FONT></TD><TD background="resources/bar-border-right.gif" width="9"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="9"></TD></TR><TR><TD align="right" height="12" valign="top" width="9"><IMG border="0" height="12" hspace="0" src="resources/bar-bottom-left.gif" vspace="0" width="9"></TD><TD background="resources/bar-border-bottom.gif"><IMG border="0" height="12" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD><TD align="left" height="12" valign="top" width="9"><IMG border="0" height="12" hspace="0" src="resources/bar-bottom-right.gif" vspace="0" width="9"></TD></TR></TABLE><TABLE border="0" cellpadding="0" cellspacing="0" width="95%"><TR><TD><FONT color="#000000" face="arial,helvetica,sanserif">
<P><TABLE border="0" cellpadding="0" cellspacing="3" width="100%"><TR><TD valign="top" width="28"><IMG alt="Note" border="0" height="29" hspace="0" src="resources/note.gif" vspace="0" width="28"></TD><TD valign="top"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1"><I>
<B>4.3 Spaces and Conditionality</B>
... Space-specifiers occurring in sequence may interact with
each other. The constraint imposed by a sequence of
space-specifiers is computed by calculating for each
space-specifier its associated resolved space-specifier in
accordance with their conditionality and precedence.
</I></FONT></TD></TR></TABLE></P>
<P><TABLE border="0" cellpadding="0" cellspacing="3" width="100%"><TR><TD valign="top" width="28"><IMG alt="Note" border="0" height="29" hspace="0" src="resources/note.gif" vspace="0" width="28"></TD><TD valign="top"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1"><I>
4.2.5 Stacking Constraints ... The intention of the
definitions is to identify areas at any level of the tree
which have only space between them.
</I></FONT></TD></TR></TABLE></P>
<P align="left">
The quotations above are pivotal to understanding the
complex discussion of spaces with which they are associated,
all of which exists to enable the resolution of adjacent
<space>s. It may be helpful to think of <I>stacking
constraints</I> as <I><space>s interaction</I> or
<I><space>s stacking interaction</I>.
</P>
</FONT></TD></TR></TABLE></DIV><BR>
<DIV align="right"><TABLE border="0" cellpadding="0" cellspacing="0" width="95%"><TR><TD align="right" height="7" valign="bottom" width="9"><IMG border="0" height="7" hspace="0" src="resources/bar-top-left.gif" vspace="0" width="9"></TD><TD background="resources/bar-border-top.gif"><IMG border="0" height="5" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD><TD align="left" height="7" valign="bottom" width="9"><IMG border="0" height="7" hspace="0" src="resources/bar-top-right.gif" vspace="0" width="9"></TD></TR><TR><TD background="resources/bar-border-left.gif" width="9"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="9"></TD><TD bgcolor="#0086b2" width="100%"><FONT color="#ffffff" face="arial,helvetica,sanserif"><IMG border="0" height="5" hspace="0" src="resources/void.gif" vspace="0" width="5"><B>Block stacking constraints</B></FONT></TD><TD background="resources/bar-border-right.gif" width="9"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="9"></TD></TR><TR><TD align="right" height="12" valign="top" width="9"><IMG border="0" height="12" hspace="0" src="resources/bar-bottom-left.gif" vspace="0" width="9"></TD><TD background="resources/bar-border-bottom.gif"><IMG border="0" height="12" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD><TD align="left" height="12" valign="top" width="9"><IMG border="0" height="12" hspace="0" src="resources/bar-bottom-right.gif" vspace="0" width="9"></TD></TR></TABLE><TABLE border="0" cellpadding="0" cellspacing="0" width="95%"><TR><TD><FONT color="#000000" face="arial,helvetica,sanserif">
<P align="left">
In the discussion of block stacking constraints in Section
4.2.5, the notion of <I>fence</I> is introduced. For
block stacking constraints, a fence is defined as either a
reference-area boundary or a non-zero padding or border
specification. Fences, however, do not come into play
when determining the constraint between siblings. (See
<A href="#Figure1">Figure 1</A>.)
</P>
<P align="left"><B>Figure 1</B></P><A name="Figure1"><!--anchor--></A>
<P align="center"><IMG alt="block-stacking-constraints.png" border="0" hspace="4" src="block-stacking-constraints.png" vspace="4"></P>
<P><TABLE border="0" cellpadding="0" cellspacing="3" width="100%"><TR><TD valign="top" width="28"><IMG alt="Note" border="0" height="29" hspace="0" src="resources/note.gif" vspace="0" width="28"></TD><TD valign="top"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1"><I>
Figure 1 assumes a block-progression-direction of top to
bottom.
</I></FONT></TD></TR></TABLE></P>
<P align="left">
In <A href="#Figure1">Diagram a)</A>, block A has
non-zero padding and borders, in addition to non-zero
spaces. Note, however, that the space-after of A is
adjacent to the space-before of block P, so borders and
padding on these siblings have no impact on the interaction
of their <space>s. The stacking constraint A,P is
indicated by the red rectangle enclosing the space-after of
A and the space-before of P.
</P>
<P align="left">
In <A href="#Figure1">Diagram b)</A>, block B is the
first block child of P. The stacking constraint A,P is as
before; the stacking constraint P,B is the space-before of
B, as indicated by the enclosing magenta rectangle. In this
case, however, the non-zero border of P prevents the
interaction of the A,P and P,B stacking constraints. There
is a <I>fence-before</I> P. The fence is notional; it has
no precise location, as the diagram may lead one to believe.
</P>
<P align="left">
In <A href="#Figure1">Diagram c)</A>, because of the
zero-width borders and padding on block P, the fence-before
P is not present, and the adjacent <space>s of blocks
A, P and B are free to interact. In this case, the stacking
constraints A,P and P,B are as before, but now there is an
additional stacking constraint A,B, represented by the light
brown rectangle enclosing the other two stacking
constraints.
</P>
<P align="left">
The other form of fence occurs when the parent block is a
reference area. Diagram b) of <A href="#Figure2">Figure
2</A> illustrates this situation. Block C is a
reference-area, involving a 180 degree change of
block-progression-direction (BPD). In the diagram, the
inner edge of block C represents the content rectangle, with
its changed BPD. The thicker outer edge represents the
outer boundary of the padding, border and spaces of C.
</P>
<P align="left">
While not every reference-area will change the
inline-progression-direction (IPD) and BPD of an area, no
attempt is made to discriminate these cases. A
reference-area always a fence. The fence comes into play in
analogous circumstances to non-zero borders or padding.
Space resolution between a reference area and its siblings
is not affected.
</P>
<P align="left">
In the case of <A href="#Figure2">Diagram b)</A>,
these are block stacking constraints B,C and C,A. Within
the reference-area, bock stacing constraints C,D and E,C are
unaffected. However, the fence prevents block stacking
constraints such as B,E or D,A. When there is a change of
BPD, as <A href="#Figure2">Diagram b)</A> makes
visually obvious, it is difficult to imagine which blocks
would have such a constraint, and what the ordering of the
constraint would be.
</P>
<P align="left"><B>Figure 2</B></P>
<A name="Figure2"><!--anchor--></A>
<P align="center"><IMG alt="block-stacking-keeps.png" border="0" hspace="4" src="block-stacking-keeps.png" vspace="4"></P>
</FONT></TD></TR></TABLE></DIV><BR>
<DIV align="right"><TABLE border="0" cellpadding="0" cellspacing="0" width="95%"><TR><TD align="right" height="7" valign="bottom" width="9"><IMG border="0" height="7" hspace="0" src="resources/bar-top-left.gif" vspace="0" width="9"></TD><TD background="resources/bar-border-top.gif"><IMG border="0" height="5" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD><TD align="left" height="7" valign="bottom" width="9"><IMG border="0" height="7" hspace="0" src="resources/bar-top-right.gif" vspace="0" width="9"></TD></TR><TR><TD background="resources/bar-border-left.gif" width="9"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="9"></TD><TD bgcolor="#0086b2" width="100%"><FONT color="#ffffff" face="arial,helvetica,sanserif"><IMG border="0" height="5" hspace="0" src="resources/void.gif" vspace="0" width="5"><B>Keep relationships between blocks</B></FONT></TD><TD background="resources/bar-border-right.gif" width="9"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="9"></TD></TR><TR><TD align="right" height="12" valign="top" width="9"><IMG border="0" height="12" hspace="0" src="resources/bar-bottom-left.gif" vspace="0" width="9"></TD><TD background="resources/bar-border-bottom.gif"><IMG border="0" height="12" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD><TD align="left" height="12" valign="top" width="9"><IMG border="0" height="12" hspace="0" src="resources/bar-bottom-right.gif" vspace="0" width="9"></TD></TR></TABLE><TABLE border="0" cellpadding="0" cellspacing="0" width="95%"><TR><TD><FONT color="#000000" face="arial,helvetica,sanserif">
<P align="left">
As complicated as space-specifiers become when
reference-areas are involved, the keep relationships as
described in the <A href="keeps.html#Figure1">keeps</A> document, are
unchanged. This is also illustrated in <A href="#Figure2">Figure 2</A>. Diagram b) shows the
relative placement of blocks in the rendered output when a
180 degree change of BPD occurs, with blocks D and E
stacking in the reverse direction to blocks B and C.
Diagram c) shows what happens when the page is too short to
accommodate the last block. D is still laid out, but E is
deferred to the next page.
</P>
<P align="left">
Note that this rendering reality is expressed directly in
the area (and layout) tree view. Consequently, any keep
relationships expressed as links threading through the
layout tree will not need to be modified to account for
reference-area boundaries, as is the case with similar
space-specifier edge links. E.g., a keep-with-next
condition on block B can be resolved along the path of these
links (B->C->D) into a direct relationship of B->D,
irrespective of the reference-area boundary.
</P>
<P align="left">
While the same relationships obviously hold when a reference
area induces no change of BPD, the situation for BPD changes
perpendicular to the parent's BPD may not be so clear. In
general, it probably does not make much sense to impose keep
conditions across such a boundary, but there seems to be
nothing preventing such conditions. They can be dealt with
in the same way, i.e., the next leaf block linked in area
tree order must be the next laid out. If a keep condition
is in place, an attempt must be made to meet it. A number
of unusual considerations would apply, e.g. the minimum
inline-progression-dimension of the first leaf block within
the reference-area as compared to the minimum IPD of
subsequent blocks, but <I>prima facie</I>, the essential
logic of the keeps links remains.
</P>
</FONT></TD></TR></TABLE></DIV><BR>
</FONT></TD></TR></TABLE></DIV><BR>
</TD></TR></TABLE></TD></TR></TABLE><BR><TABLE border="0" cellpadding="0" cellspacing="0" width="100%"><TR><TD bgcolor="#0086b2"><IMG height="1" src="images/dot.gif" width="1"></TD></TR><TR><TD align="center"><FONT color="#0086b2" face="arial,helvetica,sanserif" size="-1"><I>
Copyright © 2001-2002 The Apache Software Foundation.
All Rights Reserved.
</I></FONT></TD></TR></TABLE></BODY></HTML>
1.1 xml-site/targets/fop/design/alt.design/traits.html
Index: traits.html
===================================================================
<HTML><HEAD><SCRIPT language="JavaScript" src="resources/script.js" type="text/javascript"></SCRIPT><TITLE>Traits</TITLE></HEAD><BODY alink="#cc0000" bgcolor="#ffffff" leftmargin="4" link="#039acc" marginheight="4" marginwidth="4" text="#000000" topmargin="4" vlink="#0086b2"><TABLE border="0" cellpadding="0" cellspacing="0" width="100%"><TR><TD align="left" height="60" rowspan="3" valign="top" width="135"><IMG border="0" height="60" hspace="0" src="resources/logo.gif" vspace="0" width="135"></TD><TD align="left" background="resources/line.gif" colspan="2" height="5" valign="top" width="100%"><IMG align="left" border="0" height="5" hspace="0" src="resources/line.gif" vspace="0" width="1"></TD><TD align="left" height="60" rowspan="3" valign="top" width="29"><IMG border="0" height="60" hspace="0" src="resources/right.gif" vspace="0" width="29"></TD></TR><TR><TD align="left" bgcolor="#0086b2" colspan="2" height="35" valign="top" width="100%"><IMG align="right" alt="" border="0" height="35" hspace="0" src="graphics/traits-header.jpg" vspace="0" width="456"></TD></TR><TR><TD align="left" background="resources/bottom.gif" bgcolor="#0086b2" height="20" valign="top" width="100%"><IMG align="left" border="0" height="20" hspace="0" src="resources/bottom.gif" vspace="0" width="3"></TD><TD align="right" background="resources/bottom.gif" bgcolor="#0086b2" height="20" valign="top" width="288"><TABLE border="0" cellpadding="0" cellspacing="0" width="288"><TR><TD align="left" height="20" valign="top" width="96"><A href="http://xml.apache.org/" onMouseOut="rolloverOff('xml');" onMouseOver="rolloverOn('xml');" target="new"><IMG alt="http://xml.apache.org/" border="0" height="20" hspace="0" name="xml" onLoad="rolloverLoad('xml','resources/button-xml-hi.gif','resources/button-xml-lo.gif');" src="resources/button-xml-lo.gif" vspace="0" width="96"></A></TD><TD align="left" height="20" valign="top" width="96"><A href="http://www.apache.org/" onMouseOut="rolloverOff('asf');" onMouseOver="rolloverOn('asf');" target="new"><IMG alt="http://www.apache.org/" border="0" height="20" hspace="0" name="asf" onLoad="rolloverLoad('asf','resources/button-asf-hi.gif','resources/button-asf-lo.gif');" src="resources/button-asf-lo.gif" vspace="0" width="96"></A></TD><TD align="left" height="20" valign="top" width="96"><A href="http://www.w3.org/" onMouseOut="rolloverOff('w3c');" onMouseOver="rolloverOn('w3c');" target="new"><IMG alt="http://www.w3.org/" border="0" height="20" hspace="0" name="w3c" onLoad="rolloverLoad('w3c','resources/button-w3c-hi.gif','resources/button-w3c-lo.gif');" src="resources/button-w3c-lo.gif" vspace="0" width="96"></A></TD></TR></TABLE></TD></TR></TABLE><TABLE border="0" cellpadding="0" cellspacing="0" width="100%"><TR><TD align="left" valign="top" width="120"><IMG border="0" height="14" hspace="0" src="resources/join.gif" vspace="0" width="120"><BR>
<A href="http://xml.apache.org/fop/" onMouseOut="rolloverOff('side-ext-2');" onMouseOver="rolloverOn('side-ext-2');"><IMG alt="About FOP" border="0" height="12" hspace="0" name="side-ext-2" onLoad="rolloverLoad('side-ext-2','graphics/ext-2-label-2.jpg','graphics/ext-2-label-3.jpg');" src="graphics/ext-2-label-3.jpg" vspace="0" width="120"></A><BR>
<IMG border="0" height="6" hspace="0" src="resources/separator.gif" vspace="0" width="120"><BR>
<A href="../index.html" onMouseOut="rolloverOff('side-ext-6');" onMouseOver="rolloverOn('side-ext-6');"><IMG alt="NEW DESIGN" border="0" height="12" hspace="0" name="side-ext-6" onLoad="rolloverLoad('side-ext-6','graphics/ext-6-label-2.jpg','graphics/ext-6-label-3.jpg');" src="graphics/ext-6-label-3.jpg" vspace="0" width="120"></A><BR>
<IMG border="0" height="6" hspace="0" src="resources/separator.gif" vspace="0" width="120"><BR>
<A href="index.html" onMouseOut="rolloverOff('side-index');" onMouseOver="rolloverOn('side-index');"><IMG alt="co-routines" border="0" height="12" hspace="0" name="side-index" onLoad="rolloverLoad('side-index','graphics/index-label-2.jpg','graphics/index-label-3.jpg');" src="graphics/index-label-3.jpg" vspace="0" width="120"></A><BR>
<A href="galleys.html" onMouseOut="rolloverOff('side-galleys');" onMouseOver="rolloverOn('side-galleys');"><IMG alt="galleys" border="0" height="12" hspace="0" name="side-galleys" onLoad="rolloverLoad('side-galleys','graphics/galleys-label-2.jpg','graphics/galleys-label-3.jpg');" src="graphics/galleys-label-3.jpg" vspace="0" width="120"></A><BR>
<A href="footnotes.html" onMouseOut="rolloverOff('side-footnotes');" onMouseOver="rolloverOn('side-footnotes');"><IMG alt="footnotes" border="0" height="12" hspace="0" name="side-footnotes" onLoad="rolloverLoad('side-footnotes','graphics/footnotes-label-2.jpg','graphics/footnotes-label-3.jpg');" src="graphics/footnotes-label-3.jpg" vspace="0" width="120"></A><BR>
<A href="keeps.html" onMouseOut="rolloverOff('side-keeps');" onMouseOver="rolloverOn('side-keeps');"><IMG alt="keeps" border="0" height="12" hspace="0" name="side-keeps" onLoad="rolloverLoad('side-keeps','graphics/keeps-label-2.jpg','graphics/keeps-label-3.jpg');" src="graphics/keeps-label-3.jpg" vspace="0" width="120"></A><BR>
<A href="spaces.html" onMouseOut="rolloverOff('side-spaces');" onMouseOver="rolloverOn('side-spaces');"><IMG alt="space-specifiers" border="0" height="12" hspace="0" name="side-spaces" onLoad="rolloverLoad('side-spaces','graphics/spaces-label-2.jpg','graphics/spaces-label-3.jpg');" src="graphics/spaces-label-3.jpg" vspace="0" width="120"></A><BR>
<IMG border="0" height="6" hspace="0" src="resources/separator.gif" vspace="0" width="120"><BR>
<A href="alt.properties.html" onMouseOut="rolloverOff('side-alt.properties');" onMouseOver="rolloverOn('side-alt.properties');"><IMG alt="alt.properties" border="0" height="12" hspace="0" name="side-alt.properties" onLoad="rolloverLoad('side-alt.properties','graphics/alt.properties-label-2.jpg','graphics/alt.properties-label-3.jpg');" src="graphics/alt.properties-label-3.jpg" vspace="0" width="120"></A><BR>
<A href="classes-overview.html" onMouseOut="rolloverOff('side-classes-overview');" onMouseOver="rolloverOn('side-classes-overview');"><IMG alt="Classes overview" border="0" height="12" hspace="0" name="side-classes-overview" onLoad="rolloverLoad('side-classes-overview','graphics/classes-overview-label-2.jpg','graphics/classes-overview-label-3.jpg');" src="graphics/classes-overview-label-3.jpg" vspace="0" width="120"></A><BR>
<A href="properties-classes.html" onMouseOut="rolloverOff('side-properties-classes');" onMouseOver="rolloverOn('side-properties-classes');"><IMG alt="Properties classes" border="0" height="12" hspace="0" name="side-properties-classes" onLoad="rolloverLoad('side-properties-classes','graphics/properties-classes-label-2.jpg','graphics/properties-classes-label-3.jpg');" src="graphics/properties-classes-label-3.jpg" vspace="0" width="120"></A><BR>
<A href="Properties.html" onMouseOut="rolloverOff('side-Properties');" onMouseOver="rolloverOn('side-Properties');"><IMG alt="Properties" border="0" height="12" hspace="0" name="side-Properties" onLoad="rolloverLoad('side-Properties','graphics/Properties-label-2.jpg','graphics/Properties-label-3.jpg');" src="graphics/Properties-label-3.jpg" vspace="0" width="120"></A><BR>
<A href="PropertyConsts.html" onMouseOut="rolloverOff('side-PropertyConsts');" onMouseOver="rolloverOn('side-PropertyConsts');"><IMG alt="PropertyConsts" border="0" height="12" hspace="0" name="side-PropertyConsts" onLoad="rolloverLoad('side-PropertyConsts','graphics/PropertyConsts-label-2.jpg','graphics/PropertyConsts-label-3.jpg');" src="graphics/PropertyConsts-label-3.jpg" vspace="0" width="120"></A><BR>
<A href="PropNames.html" onMouseOut="rolloverOff('side-PropNames');" onMouseOver="rolloverOn('side-PropNames');"><IMG alt="PropNames" border="0" height="12" hspace="0" name="side-PropNames" onLoad="rolloverLoad('side-PropNames','graphics/PropNames-label-2.jpg','graphics/PropNames-label-3.jpg');" src="graphics/PropNames-label-3.jpg" vspace="0" width="120"></A><BR>
<A href="AbsolutePosition.html" onMouseOut="rolloverOff('side-AbsolutePosition');" onMouseOver="rolloverOn('side-AbsolutePosition');"><IMG alt="AbsolutePosition" border="0" height="12" hspace="0" name="side-AbsolutePosition" onLoad="rolloverLoad('side-AbsolutePosition','graphics/AbsolutePosition-label-2.jpg','graphics/AbsolutePosition-label-3.jpg');" src="graphics/AbsolutePosition-label-3.jpg" vspace="0" width="120"></A><BR>
<A href="VerticalAlign.html" onMouseOut="rolloverOff('side-VerticalAlign');" onMouseOver="rolloverOn('side-VerticalAlign');"><IMG alt="VerticalAlign" border="0" height="12" hspace="0" name="side-VerticalAlign" onLoad="rolloverLoad('side-VerticalAlign','graphics/VerticalAlign-label-2.jpg','graphics/VerticalAlign-label-3.jpg');" src="graphics/VerticalAlign-label-3.jpg" vspace="0" width="120"></A><BR>
<A href="BorderCommonStyle.html" onMouseOut="rolloverOff('side-BorderCommonStyle');" onMouseOver="rolloverOn('side-BorderCommonStyle');"><IMG alt="BorderCommonStyle" border="0" height="12" hspace="0" name="side-BorderCommonStyle" onLoad="rolloverLoad('side-BorderCommonStyle','graphics/BorderCommonStyle-label-2.jpg','graphics/BorderCommonStyle-label-3.jpg');" src="graphics/BorderCommonStyle-label-3.jpg" vspace="0" width="120"></A><BR>
<IMG border="0" height="6" hspace="0" src="resources/separator.gif" vspace="0" width="120"><BR>
<A href="xml-parsing.html" onMouseOut="rolloverOff('side-xml-parsing');" onMouseOver="rolloverOn('side-xml-parsing');"><IMG alt="XML parsing" border="0" height="12" hspace="0" name="side-xml-parsing" onLoad="rolloverLoad('side-xml-parsing','graphics/xml-parsing-label-2.jpg','graphics/xml-parsing-label-3.jpg');" src="graphics/xml-parsing-label-3.jpg" vspace="0" width="120"></A><BR>
<IMG border="0" height="6" hspace="0" src="resources/separator.gif" vspace="0" width="120"><BR>
<A href="property-parsing.html" onMouseOut="rolloverOff('side-property-parsing');" onMouseOver="rolloverOn('side-property-parsing');"><IMG alt="Property parsing" border="0" height="12" hspace="0" name="side-property-parsing" onLoad="rolloverLoad('side-property-parsing','graphics/property-parsing-label-2.jpg','graphics/property-parsing-label-3.jpg');" src="graphics/property-parsing-label-3.jpg" vspace="0" width="120"></A><BR>
<IMG border="0" height="6" hspace="0" src="resources/separator.gif" vspace="0" width="120"><BR>
<A href="compound-properties.html" onMouseOut="rolloverOff('side-compound-properties');" onMouseOver="rolloverOn('side-compound-properties');"><IMG alt="Compound properties" border="0" height="12" hspace="0" name="side-compound-properties" onLoad="rolloverLoad('side-compound-properties','graphics/compound-properties-label-2.jpg','graphics/compound-properties-label-3.jpg');" src="graphics/compound-properties-label-3.jpg" vspace="0" width="120"></A><BR>
<IMG alt="Traits" border="0" height="12" hspace="0" src="graphics/traits-label-1.jpg" vspace="0" width="120"><BR>
<IMG border="0" height="14" hspace="0" src="resources/close.gif" vspace="0" width="120"><BR></TD><TD align="left" valign="top" width="*"><TABLE border="0" cellpadding="3" cellspacing="0"><TR><TD><BR>
<DIV align="right"><TABLE border="0" cellpadding="0" cellspacing="0" width="98%"><TR><TD align="right" height="7" valign="bottom" width="9"><IMG border="0" height="7" hspace="0" src="resources/bar-top-left.gif" vspace="0" width="9"></TD><TD background="resources/bar-border-top.gif"><IMG border="0" height="5" hspace="0" src="resources/void.gif" vspace="0" width="1"></TD><TD align="left" height="7" valign="bottom" width="9"><IMG border="0" height="7" hspace="0" src="resources/bar-top-right.gif" vspace="0" width="9"></TD></TR><TR><TD background="resources/bar-border-left.gif" width="9"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="9"></TD><TD bgcolor="#0086b2" width="100%"><FONT color="#ffffff" face="arial,helvetica,sanserif" size="+1"><IMG border="0" height="5" hspace="0" src="resources/void.gif" vspace="0" width="5"><B>Traits</B></FONT></TD><TD background="resources/bar-border-right.gif" width="9"><IMG border="0" height="1" hspace="0" src="resources/void.gif" vspace="0" width="9"></TD></TR><TR><TD align="right" height="12" valign="top" width="9"><IMG border="0" height="12" hspace="0" src="resources/bar-bottom-left.gif" vspace="0" width="9"></TD><TD background="resources/bar-border-bottom.gif"><IMG border="0" height="12" hspace="0" src="resources/void.gif" vspace="0"></TD><TD align="left" height="12" valign="top" width="9"><IMG border="0" height="12" hspace="0" src="resources/bar-bottom-right.gif" vspace="0" width="9"></TD></TR></TABLE><TABLE border="0" cellpadding="0" cellspacing="0" width="98%"><TR><TD><FONT color="#000000" face="arial,helvetica,sanserif">
<TABLE border="0" cellpadding="2" cellspacing="2" width="100%"><CAPTION></CAPTION>
<TR>
<TD align="center" bgcolor="#039acc" colspan="" rowspan="" valign="center"><FONT color="#ffffff" face="arial,helvetica,sanserif" size="-1"><B>Trait</B>
</FONT></TD>
<TD align="center" bgcolor="#039acc" colspan="" rowspan="" valign="center"><FONT color="#ffffff" face="arial,helvetica,sanserif" size="-1"><B>Applies to</B>
</FONT></TD>
<TD align="center" bgcolor="#039acc" colspan="" rowspan="" valign="center"><FONT color="#ffffff" face="arial,helvetica,sanserif" size="-1"><B>Refs</B>
</FONT></TD>
<TD align="center" bgcolor="#039acc" colspan="" rowspan="" valign="center"><FONT color="#ffffff" face="arial,helvetica,sanserif" size="-1"><B>Derived from</B>
</FONT></TD>
</TR>
<TR>
<TD align="center" bgcolor="#039acc" colspan="" rowspan="" valign="center"><FONT color="#ffffff" face="arial,helvetica,sanserif" size="-1"><B>Common Traits</B>
</FONT></TD>
</TR>
<TR>
<TD align="left" bgcolor="#a0ddf0" colspan="" rowspan="" valign="top"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">block-progression-direction
</FONT></TD>
<TD align="left" bgcolor="#a0ddf0" colspan="" rowspan="" valign="top"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">All areas
</FONT></TD>
<TD align="left" bgcolor="#a0ddf0" colspan="" rowspan="" valign="top"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">
<A href="http://www.w3.org/TR/xsl/slice4.html#area-common">4.2.2 Common Traits</A><BR>
<A href="http://www.w3.org/TR/xsl/slice7.html#writing-mode">7.27.7 writing-mode</A>
</FONT></TD>
<TD align="left" bgcolor="#a0ddf0" colspan="" rowspan="" valign="top"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">
<A href="http://www.w3.org/TR/xsl/slice7.html#reference-orientation">7.27.7 reference-orientation</A>
</FONT></TD>
</TR>
<TR>
<TD align="left" bgcolor="#a0ddf0" colspan="" rowspan="" valign="top"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">inline-progression-direction
</FONT></TD>
<TD align="left" bgcolor="#a0ddf0" colspan="" rowspan="" valign="top"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">All areas
</FONT></TD>
<TD align="left" bgcolor="#a0ddf0" colspan="" rowspan="" valign="top"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">
<A href="http://www.w3.org/TR/xsl/slice4.html#area-common">4.2.2 Common Traits</A><BR>
<A href="http://www.w3.org/TR/xsl/slice7.html#writing-mode">7.27.7 writing-mode</A>
</FONT></TD>
<TD align="left" bgcolor="#a0ddf0" colspan="" rowspan="" valign="top"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">
<A href="http://www.w3.org/TR/xsl/slice7.html#reference-orientation">7.27.7 reference-orientation</A>
</FONT></TD>
</TR>
<TR>
<TD align="left" bgcolor="#a0ddf0" colspan="" rowspan="" valign="top"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">shift-direction
</FONT></TD>
<TD align="left" bgcolor="#a0ddf0" colspan="" rowspan="" valign="top"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">Inline areas
</FONT></TD>
</TR>
<TR>
<TD align="left" bgcolor="#a0ddf0" colspan="" rowspan="" valign="top"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">glyph-orientation
</FONT></TD>
<TD align="left" bgcolor="#a0ddf0" colspan="" rowspan="" valign="top"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">Glyph-areas
</FONT></TD>
<TD align="left" bgcolor="#a0ddf0" colspan="" rowspan="" valign="top"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">
<A href="http://www.w3.org/TR/xsl/slice4.html#area-common">4.2.2 Common Traits</A><BR>
<A href="http://www.w3.org/TR/xsl/slice4.html#area-glyph">4.6.2 Glyph-areas</A><BR>
<A href="http://www.w3.org/TR/xsl/slice4.html#area-linebuild">4.7.2 Line-building</A><BR>
<A href="http://www.w3.org/TR/xsl/slice4.html#rend-intrinsic">4.9.5 Intrinsic Marks</A><BR>
<A href="http://www.w3.org/TR/xsl/slice7.html#font-model">7.8.1 Fonts and Font Data</A><BR>
<A href="http://www.w3.org/TR/xsl/slice7.html#writing-mode-related">7.27 Writing-mode-related Properties</A>
</FONT></TD>
<TD align="left" bgcolor="#a0ddf0" colspan="" rowspan="" valign="top"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">
<A href="http://www.w3.org/TR/xsl/slice7.html#glyph-orientation-horizontal">7.27.2 glyph-orientation-horizontal</A><BR>
<A href="http://www.w3.org/TR/xsl/slice7.html#glyph-orientation-vertical">7.27.3 glyph-orientation-vertical</A><BR>
<A href="http://www.w3.org/TR/xsl/slice7.html#direction">7.27.1 direction</A><BR>
<A href="http://www.w3.org/TR/xsl/slice7.html#writing-mode">7.27.7 writing-mode</A>
</FONT></TD>
</TR>
<TR>
<TD align="left" bgcolor="#a0ddf0" colspan="" rowspan="" valign="top"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">is-reference-area
</FONT></TD>
<TD align="left" bgcolor="#a0ddf0" colspan="" rowspan="" valign="top"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">All areas
</FONT></TD>
<TD align="left" bgcolor="#a0ddf0" colspan="" rowspan="" valign="top"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">
<A href="http://www.w3.org/TR/xsl/slice5.html#section-N6691-Non-property-Based-Trait-Generation">5.6 Non-property Based Trait Generation</A>
</FONT></TD>
<TD align="left" bgcolor="#a0ddf0" colspan="" rowspan="" valign="top"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">
Set "true" on:<BR>
simple-page-master<BR>
title<BR>
region-body<BR>
region-before<BR>
region-after<BR>
region-start<BR>
region-end<BR>
block-container<BR>
inline-container<BR>
table<BR>
table-caption<BR>
table-cell
</FONT></TD>
</TR>
<TR>
<TD align="left" bgcolor="#a0ddf0" colspan="" rowspan="" valign="top"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">is-viewport-area
</FONT></TD>
<TD align="left" bgcolor="#a0ddf0" colspan="" rowspan="" valign="top"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">
</FONT></TD>
<TD align="left" bgcolor="#a0ddf0" colspan="" rowspan="" valign="top"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">
<A href="http://www.w3.org/TR/xsl/slice4.html#area-common">4.2.2 Common Traits</A>
</FONT></TD>
</TR>
<TR>
<TD align="left" bgcolor="#a0ddf0" colspan="" rowspan="" valign="top"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">top-position
</FONT></TD>
</TR>
<TR>
<TD align="left" bgcolor="#a0ddf0" colspan="" rowspan="" valign="top"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">bottom-position
</FONT></TD>
</TR>
<TR>
<TD align="left" bgcolor="#a0ddf0" colspan="" rowspan="" valign="top"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">left-position
</FONT></TD>
</TR>
<TR>
<TD align="left" bgcolor="#a0ddf0" colspan="" rowspan="" valign="top"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">right-position
</FONT></TD>
</TR>
<TR>
<TD align="left" bgcolor="#a0ddf0" colspan="" rowspan="" valign="top"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">left-offset
</FONT></TD>
</TR>
<TR>
<TD align="left" bgcolor="#a0ddf0" colspan="" rowspan="" valign="top"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">top-offset
</FONT></TD>
</TR>
<TR>
<TD align="left" bgcolor="#a0ddf0" colspan="" rowspan="" valign="top"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">is-first
</FONT></TD>
</TR>
<TR>
<TD align="left" bgcolor="#a0ddf0" colspan="" rowspan="" valign="top"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">is-last
</FONT></TD>
</TR>
<TR>
<TD align="left" bgcolor="#a0ddf0" colspan="" rowspan="" valign="top"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">generated-by
</FONT></TD>
</TR>
<TR>
<TD align="left" bgcolor="#a0ddf0" colspan="" rowspan="" valign="top"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">returned-by
</FONT></TD>
</TR>
<TR>
<TD align="left" bgcolor="#a0ddf0" colspan="" rowspan="" valign="top"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">nominal-font
</FONT></TD>
</TR>
<TR>
<TD align="left" bgcolor="#a0ddf0" colspan="" rowspan="" valign="top"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">blink
</FONT></TD>
<TD align="left" bgcolor="#a0ddf0" colspan="" rowspan="" valign="top"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">
</FONT></TD>
<TD align="left" bgcolor="#a0ddf0" colspan="" rowspan="" valign="top"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">
<A href="http://www.w3.org/TR/xsl/slice5.html#refine-text-decoration">5.5.6 Text-decoration Property
</A>
</FONT></TD>
<TD align="left" bgcolor="#a0ddf0" colspan="" rowspan="" valign="top"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">
<A href="http://www.w3.org/TR/xsl/slice7.html#text-decoration">7.16.4 "text-decoration"
</A>
</FONT></TD>
</TR>
<TR>
<TD align="left" bgcolor="#a0ddf0" colspan="" rowspan="" valign="top"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">underline-score
</FONT></TD>
<TD align="left" bgcolor="#a0ddf0" colspan="" rowspan="" valign="top"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">
</FONT></TD>
<TD align="left" bgcolor="#a0ddf0" colspan="" rowspan="" valign="top"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">
<A href="http://www.w3.org/TR/xsl/slice5.html#refine-text-decoration">5.5.6 Text-decoration Property
</A>
</FONT></TD>
<TD align="left" bgcolor="#a0ddf0" colspan="" rowspan="" valign="top"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">
<A href="http://www.w3.org/TR/xsl/slice7.html#text-decoration">7.16.4 "text-decoration"
</A>
</FONT></TD>
</TR>
<TR>
<TD align="left" bgcolor="#a0ddf0" colspan="" rowspan="" valign="top"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">underline-score-color
</FONT></TD>
<TD align="left" bgcolor="#a0ddf0" colspan="" rowspan="" valign="top"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">
</FONT></TD>
<TD align="left" bgcolor="#a0ddf0" colspan="" rowspan="" valign="top"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">
<A href="http://www.w3.org/TR/xsl/slice5.html#refine-text-decoration">5.5.6 Text-decoration Property
</A>
</FONT></TD>
<TD align="left" bgcolor="#a0ddf0" colspan="" rowspan="" valign="top"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">
<A href="http://www.w3.org/TR/xsl/slice7.html#text-decoration">7.16.4 "text-decoration"
</A>
</FONT></TD>
</TR>
<TR>
<TD align="left" bgcolor="#a0ddf0" colspan="" rowspan="" valign="top"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">overline-score
</FONT></TD>
<TD align="left" bgcolor="#a0ddf0" colspan="" rowspan="" valign="top"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">
</FONT></TD>
<TD align="left" bgcolor="#a0ddf0" colspan="" rowspan="" valign="top"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">
<A href="http://www.w3.org/TR/xsl/slice5.html#refine-text-decoration">5.5.6 Text-decoration Property
</A>
</FONT></TD>
<TD align="left" bgcolor="#a0ddf0" colspan="" rowspan="" valign="top"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">
<A href="http://www.w3.org/TR/xsl/slice7.html#text-decoration">7.16.4 "text-decoration"
</A>
</FONT></TD>
</TR>
<TR>
<TD align="left" bgcolor="#a0ddf0" colspan="" rowspan="" valign="top"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">overline-score-color
</FONT></TD>
<TD align="left" bgcolor="#a0ddf0" colspan="" rowspan="" valign="top"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">
</FONT></TD>
<TD align="left" bgcolor="#a0ddf0" colspan="" rowspan="" valign="top"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">
<A href="http://www.w3.org/TR/xsl/slice5.html#refine-text-decoration">5.5.6 Text-decoration Property
</A>
</FONT></TD>
<TD align="left" bgcolor="#a0ddf0" colspan="" rowspan="" valign="top"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">
<A href="http://www.w3.org/TR/xsl/slice7.html#text-decoration">7.16.4 "text-decoration"
</A>
</FONT></TD>
</TR>
<TR>
<TD align="left" bgcolor="#a0ddf0" colspan="" rowspan="" valign="top"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">through-score
</FONT></TD>
<TD align="left" bgcolor="#a0ddf0" colspan="" rowspan="" valign="top"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">
</FONT></TD>
<TD align="left" bgcolor="#a0ddf0" colspan="" rowspan="" valign="top"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">
<A href="http://www.w3.org/TR/xsl/slice5.html#refine-text-decoration">5.5.6 Text-decoration Property
</A>
</FONT></TD>
<TD align="left" bgcolor="#a0ddf0" colspan="" rowspan="" valign="top"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">
<A href="http://www.w3.org/TR/xsl/slice7.html#text-decoration">7.16.4 "text-decoration"
</A>
</FONT></TD>
</TR>
<TR>
<TD align="left" bgcolor="#a0ddf0" colspan="" rowspan="" valign="top"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">through-score-color
</FONT></TD>
<TD align="left" bgcolor="#a0ddf0" colspan="" rowspan="" valign="top"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">
</FONT></TD>
<TD align="left" bgcolor="#a0ddf0" colspan="" rowspan="" valign="top"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">
<A href="http://www.w3.org/TR/xsl/slice5.html#refine-text-decoration">5.5.6 Text-decoration Property
</A>
</FONT></TD>
<TD align="left" bgcolor="#a0ddf0" colspan="" rowspan="" valign="top"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">
<A href="http://www.w3.org/TR/xsl/slice7.html#text-decoration">7.16.4 "text-decoration"
</A>
</FONT></TD>
</TR>
<TR>
<TD align="center" bgcolor="#039acc" colspan="" rowspan="" valign="center"><FONT color="#ffffff" face="arial,helvetica,sanserif" size="-1"><B>Other Indirectly Derived Traits</B>
</FONT></TD>
</TR>
<TR>
<TD align="left" bgcolor="#a0ddf0" colspan="" rowspan="" valign="top"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">alignment-point
</FONT></TD>
<TD align="left" bgcolor="#a0ddf0" colspan="" rowspan="" valign="top"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">
</FONT></TD>
<TD align="left" bgcolor="#a0ddf0" colspan="" rowspan="" valign="top"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">
<A href="http://www.w3.org/TR/xsl/slice4.html#area-intro">4.1 Introduction</A>
</FONT></TD>
</TR>
<TR>
<TD align="left" bgcolor="#a0ddf0" colspan="" rowspan="" valign="top"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">alignment-baseline
</FONT></TD>
<TD align="left" bgcolor="#a0ddf0" colspan="" rowspan="" valign="top"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">
</FONT></TD>
<TD align="left" bgcolor="#a0ddf0" colspan="" rowspan="" valign="top"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">
<A href="http://www.w3.org/TR/xsl/slice4.html#area-intro">4.1 Introduction</A>
</FONT></TD>
</TR>
<TR>
<TD align="left" bgcolor="#a0ddf0" colspan="" rowspan="" valign="top"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">baseline-shift
</FONT></TD>
<TD align="left" bgcolor="#a0ddf0" colspan="" rowspan="" valign="top"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">
</FONT></TD>
<TD align="left" bgcolor="#a0ddf0" colspan="" rowspan="" valign="top"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">
<A href="http://www.w3.org/TR/xsl/slice4.html#area-intro">4.1 Introduction</A>
</FONT></TD>
</TR>
<TR>
<TD align="left" bgcolor="#a0ddf0" colspan="" rowspan="" valign="top"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">dominant-baseline-identifier
</FONT></TD>
<TD align="left" bgcolor="#a0ddf0" colspan="" rowspan="" valign="top"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">
</FONT></TD>
<TD align="left" bgcolor="#a0ddf0" colspan="" rowspan="" valign="top"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">
<A href="http://www.w3.org/TR/xsl/slice4.html#area-intro">4.1 Introduction</A>
</FONT></TD>
</TR>
<TR>
<TD align="left" bgcolor="#a0ddf0" colspan="" rowspan="" valign="top"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">actual-baseline-table
</FONT></TD>
<TD align="left" bgcolor="#a0ddf0" colspan="" rowspan="" valign="top"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">
</FONT></TD>
<TD align="left" bgcolor="#a0ddf0" colspan="" rowspan="" valign="top"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">
<A href="http://www.w3.org/TR/xsl/slice4.html#area-intro">4.1 Introduction</A>
</FONT></TD>
</TR>
<TR>
<TD align="left" bgcolor="#a0ddf0" colspan="" rowspan="" valign="top"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">start-intrusion-adjustment
</FONT></TD>
<TD align="left" bgcolor="#a0ddf0" colspan="" rowspan="" valign="top"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">
</FONT></TD>
<TD align="left" bgcolor="#a0ddf0" colspan="" rowspan="" valign="top"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">
<A href="http://www.w3.org/TR/xsl/slice4.html#area-intro">4.1 Introduction</A>
</FONT></TD>
</TR>
<TR>
<TD align="left" bgcolor="#a0ddf0" colspan="" rowspan="" valign="top"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">end-intrusion-adjustment
</FONT></TD>
<TD align="left" bgcolor="#a0ddf0" colspan="" rowspan="" valign="top"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">
</FONT></TD>
<TD align="left" bgcolor="#a0ddf0" colspan="" rowspan="" valign="top"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">
<A href="http://www.w3.org/TR/xsl/slice4.html#area-intro">4.1 Introduction</A>
</FONT></TD>
</TR>
<TR>
<TD align="left" bgcolor="#a0ddf0" colspan="" rowspan="" valign="top"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">page-number
</FONT></TD>
<TD align="left" bgcolor="#a0ddf0" colspan="" rowspan="" valign="top"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">
</FONT></TD>
<TD align="left" bgcolor="#a0ddf0" colspan="" rowspan="" valign="top"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">
<A href="http://www.w3.org/TR/xsl/slice4.html#area-intro">4.1 Introduction</A>
</FONT></TD>
</TR>
<TR>
<TD align="left" bgcolor="#a0ddf0" colspan="" rowspan="" valign="top"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">script
</FONT></TD>
<TD align="left" bgcolor="#a0ddf0" colspan="" rowspan="" valign="top"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">
</FONT></TD>
<TD align="left" bgcolor="#a0ddf0" colspan="" rowspan="" valign="top"><FONT color="#000000" face="arial,helvetica,sanserif" size="-1">
<A href="http://www.w3.org/TR/xsl/slice4.html#area-intro">4.1 Introduction</A>
</FONT></TD>
</TR>
</TABLE>
</FONT></TD></TR></TABLE></DIV><BR>
</TD></TR></TABLE></TD></TR></TABLE><BR><TABLE border="0" cellpadding="0" cellspacing="0" width="100%"><TR><TD bgcolor="#0086b2"><IMG height="1" src="images/dot.gif" width="1"></TD></TR><TR><TD align="center"><FONT color="#0086b2" face="arial,helvetica,sanserif" size="-1"><I>
Copyright © 2001-2002 The Apache Software Foundation.
All Rights Reserved.
</I></FONT></TD></TR></TABLE></BODY></HTML>
---------------------------------------------------------------------
To unsubscribe, e-mail: general-cvs-unsubscribe@xml.apache.org
For additional commands, e-mail: general-cvs-help@xml.apache.org