OASIS Mailing List ArchivesView the OASIS mailing list archive below
or browse/search using MarkMail.

 


Help: OASIS Mailing Lists Help | MarkMail Help

office message

[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]


Subject: Soft Page Break Propsosal


Dear TC,

The following proposal for soft page breaks take the following
circumstances into account:

This proposal addresses the requirement of the Accessibility SC to 
include a mechanism for applications to store page-break information in 
ODF files; AKA soft page-break.

Overview:
- soft page breaks are optional
- applications that read a document should know in advance whether a 
document contains soft page breaks or not; this simplifies 
implementation: if an application has filled a page with content, it 
should know whether it has to wait for or soft page break that follows, 
or whether it should insert a soft page break itself.
- soft page breaks are supported in text documents only
- soft page breaks may occur between paragraphs, within paragraphs, but
also between and in table rows.

Proposal:

Extend the schema in section 2.3.1 Text Document as follows:

<define name="text-content">
<choice>
<ref name="text-h"/>
<ref name="text-p"/>
<ref name="text-list"/>
<ref name="text-numbered-paragraph"/>
<ref name="table-table"/>
<ref name="draw-a"/>
<ref name="text-section"/>
* <ref name="text-soft-page-break"/>
<ref name="text-table-of-content"/>
<ref name="text-illustration-index"/>
<ref name="text-table-index"/>
<ref name="text-object-index"/>
<ref name="text-user-index"/>
<ref name="text-alphabetical-index"/>
<ref name="text-bibliography"/>
<ref name="shape"/>
<ref name="change-marks"/>
</choice>
</define>


Add to section 2.3.1 Text Document:

Use Soft Page Breaks

The text:use-soft-page-breaks attribute specifies whether the document
contains page breaks.

A soft page break is a page break that a has been included by a page
oriented processor at a position where the document itself does not 
include a page break (e.g. by using the fo:break-before and 
fo:break-after formating properties described in section 15.5.2).

Soft page breaks are specified by the <text:soft-page-break> elements
described in sections 4.7 and 5.1.1:Soft Page breaks.

The use of the <text:soft-page-break> elements is always optional. An 
application generating the format *may* include the
element if it has computed a paginated layout.
A consuming application *may* handle the element while computing the 
layout, but it *shall not* depend on its existence.
Soft page breaks are only supported within text documents.

A generating application that stores soft page breaks *shall* indicate 
this by setting the text:use-page-breaks attribute to true. A generating
application that does not store soft page breaks *shall* indicate that 
by omitting this attribute, or by setting it to false.

For <text:soft-page-break> elements that appear within table rows, the
maximum number of <text:soft-page-break> elements that appear within the
single table cells determines the number of page breaks that appear 
within the table row. The <text:soft-page-break> elements contained in 
each cell determine the positions where these page breaks appear within 
the cell content.

Similarly, <text:soft-page-break> elements that appear within text
boxes and other content displayed outside the text flow, do not start a 
new page, but only indicate where the text-box's content breaks between 
two pages.

<define name="office-text-attlist" combine="interleave">
<optional>
<attribute name="text:use-soft-page-breaks" a:defaultValue="false">
<ref name="boolean"/>
</attribute>
</optional>
</define>


Add a new section "4.7 Soft Page Break" before section 4.7 Text Declarations

The <text:soft-page-break> element represents a soft page break.

See section 2.3.1:Soft Page Breaks for details regarding soft page breaks.

<define name="text-soft-page-break">
<element name="text:soft-page-break">
<empty/>
</element>
</define>


Add to section 5.1.1 White-space Characters

Soft Page Breaks

The <text:soft-page-break> element represents a soft page break within a
heading or paragraph.

See section 2.3.1:Soft Page Breaks for details regarding soft page breaks.

The definitions in section 4.7 regarding the use of the
<text:soft-page-break> element described in section 4.7 apply to the
<text:soft-page-break> described in this section, too.

<define name="paragraph-content" combine="choice">
<ref name="text:soft-page-break"/>
</define>


Extend schema in section "4.3.2 List Item" as follows.

<define name="text-list-item-content">
<optional>
<ref name="text-number"/>
</optional>
<zeroOrMore>
<choice>
<ref name="text-p"/>
<ref name="text-h"/>
<ref name="text-list"/>
* <ref name="text-soft-page-break"/>
</choice>
</zeroOrMore>
</define>


Extent the schema in section 8.1.1 Table Element as follows:

<define name="table-rows">
<choice>
<ref name="table-table-rows"/>
<oneOrMore>
* <group>
* <optional>
* <ref name="text-soft-page-break"/>
* </optional>
<ref name="table-table-row"/>
* </group>
</oneOrMore>
</choice>
</define>


Add at the end of section 8.1.1 Table Element

Soft Page Breaks

The <text:soft-page-break> element represents a soft page break between 
two table rows. It may appear in front of <table:table-row> elements.

See section 2.3.1:Soft Page Breaks for details regarding soft page breaks.




Extent the schema in section 8.2.4 Table Header Rows as follows:

<define name="table-table-header-rows">
<element name="table:table-header-rows">
<oneOrMore>
* <optional>
* <ref name="text-soft-page-break"/>
* </optional>
<ref name="table-table-row"/>
</oneOrMore>
</element>
</define>

<define name="table-table-rows">
<element name="table:table-rows">
<oneOrMore>
* <optional>
* <ref name="text-soft-page-break"/>
* </optional>
<ref name="table-table-row"/>
</oneOrMore>
</element>
</define>


[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]