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


Help: OASIS Mailing Lists Help | MarkMail Help

office-comment message

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

Subject: ODF 1.2 CD03 2.11.2 <config:config-item-set>

The text describing the usage of config-item-sets has changed from ODF
1.1 to ODF 1.2 . It used to give examples of data to store in the
config-item-sets, but these examples have been removed.


In ODF 1.1 it was clear that the <config-item-set>-element was
intended to be used to store application specific information such as
zoom level and printer settings. So the element should be used to
store settings that did not impact document layout nor document
functionality. I would imagine that the reason for this element was to
allow applications to store their individual settings as printer
choice etc in the document - while still making sure that
interoperability was not hurt (since these settings did not affect the
document itself).

However - this intention has somewhat failed, since not all vendors
use this element exclusively for this purpose and several strategies
for extending ODF has since emerged

An example of "proper" extension of ODF (usage of <config-item-set>-element):
Lotus Symphony stores a base64-encoded binary blob (propably)
containing printer settings. This is exactly what the element was
intended to facilitate.

An example of "improper" extension of ODF (usage of <config-item-set>-element):
OpenOffice.org stores a large number of settings that directly affect
the document layout. These settings include (but are not limited to)
"UseFormerLineSpacing", "AddParaTableSpacingAtStart",
"IsKernAsianPunctuation", "CharacterCompressionType" etc. This is not
the intended usage of the <config-item-set>-element since it directly
affects the content of the document.

An example of "proper" extension of ODF (usage of ODF extension mechanisms):
Gnumeric defines a list of extensions to (primarily) ODF spreadsheets
using the extension mechanisms of ODF. These include (but are not
limited to) "gnm:GnmVAlign", "gnm:diagonal-bl-tr-line-style",
"gnm:format-magic" etc. These are extensions to the functionality of
ODF documents and they correctly use the extension mechanisms of ODF
to do so.

Further, ODF 1.2 introduces the notion of "extended documents" and
this makes it even more important to be able to distinguish between
documents that are extended and those that are not.

Proposed solution:

I propose to add the following to the specification:

To 2.11.2 <config:config-item-set>:
Add the following text:

"The setting elements SHALL not contain settings that impact document
functionality and SHALL not contain settings that impact document
layout. Application settings that impact document functionality or
impact document layout SHALL use the machanisms described in 1.4.5
Document Processing.

Alternatively, add normatory, explanatory text to section
OpenDocument Extended producers clearly saying that any application
using the <config:config-item-set>-element to store settings that
affect document layout or functionality SHALL be labelled as an
"Extended producer".
Jesper Lund Stocholm
SC34/WG4 http://www.itscj.ipsj.or.jp/sc34/wg4/

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