You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@openoffice.apache.org by Clarence GUO <cl...@gmail.com> on 2012/07/20 08:11:25 UTC

Discussion on Bug 119639, the requirement conflicts with ODF standard

HI~
I'm investigating bug 119639. Basically I need ODF standard to support
chart:percentage attribute not only in <chart:plot-area> applied style but
also in <chart:series> applied style. However ODF v1.2 says for
chart:percentage attribute "This attribute is evaluated for chart styles
that are applied to a <chart:plot-area> element.". So the requirement is
conflict with the ODF standard. So is there any method can satisfy my
requirement without ODF standard change? The details please reference below
explanation. I also post it as comment to this bug.

The chart in the sample is not a standard chart but a composite chart.
Series 1, 2 and 4 are percent stacked columns which were applied to the
main Y axis, while series 3 is normal column which was applied to the
secondary Y axis. So series 3 will cover some part of Series 1, 2 and 4.
MS Office supports such chart. It can set one or more data series to
another chart type. AOO's UI cannot do this. But the chart kernal function
supports. So when open the sample file the chart looks OK. However, the ODF
format doesn't support this, that why after save the sample to ods and
reopen, the chart becomes incorrect(Series 3 occupy 100% space of the
percent stacked column).
The reason is AOO defined a style 'ch4' and applied to <chart:plot-area>.
In this style, the chart:percentage attribute was set to true. This
attribute specifies a percentage accumulation of values per category.
Because this style was applied to <chart:plot-area>, then all data series
are regarded as percent columns. And series 3 is a unique data series which
applied to the secondary Y axis. So it occpy the total 100% space so that
other data series are all covered.
If want to fix this defect, must move chart:percentage attribute from the
style which applied to <chart:plot-area> to the style which applied to
<chart:series>. However, for this attribute, ODF 1.2 says "This attribute
is evaluated for chart styles that are applied to a <chart:plot-area>
element.". So my requirement is conflict with the ODF standard.
Then how can I fix this defect? It seems the only way is to change the
standard and change the corresponding filter code. But I know change the
standard is not easy...

Re: Discussion on Bug 119639, the requirement conflicts with ODF standard

Posted by Oliver-Rainer Wittmann <or...@googlemail.com>.
Hi,

On 23.07.2012 15:17, Rob Weir wrote:
> On Fri, Jul 20, 2012 at 2:11 AM, Clarence GUO <cl...@gmail.com> wrote:
>> HI~
>> I'm investigating bug 119639. Basically I need ODF standard to support
>> chart:percentage attribute not only in <chart:plot-area> applied style but
>> also in <chart:series> applied style. However ODF v1.2 says for
>> chart:percentage attribute "This attribute is evaluated for chart styles
>> that are applied to a <chart:plot-area> element.". So the requirement is
>> conflict with the ODF standard. So is there any method can satisfy my
>> requirement without ODF standard change? The details please reference below
>> explanation. I also post it as comment to this bug.
>>
>
> Two possibilities:
>
> 1) Generally we should avoid reinterpreting existing ODF
> elements/attributes.  But if we believe that something in ODF is
> ambiguous or wrong, then we can make a proposal to the OASIS ODF TC to
> adjust the meaning of existing ODF markup.  The main restriction here
> is that the ODF TC will generally not make changes that would break
> existing documents or implementations.
>
> 2) If we need to make a bigger change, ODF allows implementors to
> extend it.  So we can add new elements and attributes, but they cannot
> be in an ODF namespace.   We need to put the new markup in our own XML
> namespace.
>

Here, I would like to share my presentation which I gave at the OOoCon 2010 in 
Budapest [1] - especially subtopic "ODF Conforming Development"

[1] http://people.apache.org/~orw/210-209-1-PB.pdf

Best regards, Oliver.

> If we need to extend ODF I'd recommend also:
>
> a) We track on a special wiki page exactly what additions we make to
> the document format.
>
> b) We think carefully about backwards compatibility and how the new
> markup will be treated by other applications
>
> c) If we think the new feature would be useful to other editors we can
> propose adding it to ODF 1.3, as an official part of the standard.
>
> -Rob
>
>> The chart in the sample is not a standard chart but a composite chart.
>> Series 1, 2 and 4 are percent stacked columns which were applied to the
>> main Y axis, while series 3 is normal column which was applied to the
>> secondary Y axis. So series 3 will cover some part of Series 1, 2 and 4.
>> MS Office supports such chart. It can set one or more data series to
>> another chart type. AOO's UI cannot do this. But the chart kernal function
>> supports. So when open the sample file the chart looks OK. However, the ODF
>> format doesn't support this, that why after save the sample to ods and
>> reopen, the chart becomes incorrect(Series 3 occupy 100% space of the
>> percent stacked column).
>> The reason is AOO defined a style 'ch4' and applied to <chart:plot-area>.
>> In this style, the chart:percentage attribute was set to true. This
>> attribute specifies a percentage accumulation of values per category.
>> Because this style was applied to <chart:plot-area>, then all data series
>> are regarded as percent columns. And series 3 is a unique data series which
>> applied to the secondary Y axis. So it occpy the total 100% space so that
>> other data series are all covered.
>> If want to fix this defect, must move chart:percentage attribute from the
>> style which applied to <chart:plot-area> to the style which applied to
>> <chart:series>. However, for this attribute, ODF 1.2 says "This attribute
>> is evaluated for chart styles that are applied to a <chart:plot-area>
>> element.". So my requirement is conflict with the ODF standard.
>> Then how can I fix this defect? It seems the only way is to change the
>> standard and change the corresponding filter code. But I know change the
>> standard is not easy...

Re: Discussion on Bug 119639, the requirement conflicts with ODF standard

Posted by Clarence GUO <cl...@gmail.com>.
Thanks Rob and Andrea.
I will consider your suggestions.

2012/7/23 Rob Weir <ro...@apache.org>

> On Fri, Jul 20, 2012 at 2:11 AM, Clarence GUO <cl...@gmail.com>
> wrote:
> > HI~
> > I'm investigating bug 119639. Basically I need ODF standard to support
> > chart:percentage attribute not only in <chart:plot-area> applied style
> but
> > also in <chart:series> applied style. However ODF v1.2 says for
> > chart:percentage attribute "This attribute is evaluated for chart styles
> > that are applied to a <chart:plot-area> element.". So the requirement is
> > conflict with the ODF standard. So is there any method can satisfy my
> > requirement without ODF standard change? The details please reference
> below
> > explanation. I also post it as comment to this bug.
> >
>
> Two possibilities:
>
> 1) Generally we should avoid reinterpreting existing ODF
> elements/attributes.  But if we believe that something in ODF is
> ambiguous or wrong, then we can make a proposal to the OASIS ODF TC to
> adjust the meaning of existing ODF markup.  The main restriction here
> is that the ODF TC will generally not make changes that would break
> existing documents or implementations.
>
> 2) If we need to make a bigger change, ODF allows implementors to
> extend it.  So we can add new elements and attributes, but they cannot
> be in an ODF namespace.   We need to put the new markup in our own XML
> namespace.
>
> If we need to extend ODF I'd recommend also:
>
> a) We track on a special wiki page exactly what additions we make to
> the document format.
>
> b) We think carefully about backwards compatibility and how the new
> markup will be treated by other applications
>
> c) If we think the new feature would be useful to other editors we can
> propose adding it to ODF 1.3, as an official part of the standard.
>
> -Rob
>
> > The chart in the sample is not a standard chart but a composite chart.
> > Series 1, 2 and 4 are percent stacked columns which were applied to the
> > main Y axis, while series 3 is normal column which was applied to the
> > secondary Y axis. So series 3 will cover some part of Series 1, 2 and 4.
> > MS Office supports such chart. It can set one or more data series to
> > another chart type. AOO's UI cannot do this. But the chart kernal
> function
> > supports. So when open the sample file the chart looks OK. However, the
> ODF
> > format doesn't support this, that why after save the sample to ods and
> > reopen, the chart becomes incorrect(Series 3 occupy 100% space of the
> > percent stacked column).
> > The reason is AOO defined a style 'ch4' and applied to <chart:plot-area>.
> > In this style, the chart:percentage attribute was set to true. This
> > attribute specifies a percentage accumulation of values per category.
> > Because this style was applied to <chart:plot-area>, then all data series
> > are regarded as percent columns. And series 3 is a unique data series
> which
> > applied to the secondary Y axis. So it occpy the total 100% space so that
> > other data series are all covered.
> > If want to fix this defect, must move chart:percentage attribute from the
> > style which applied to <chart:plot-area> to the style which applied to
> > <chart:series>. However, for this attribute, ODF 1.2 says "This attribute
> > is evaluated for chart styles that are applied to a <chart:plot-area>
> > element.". So my requirement is conflict with the ODF standard.
> > Then how can I fix this defect? It seems the only way is to change the
> > standard and change the corresponding filter code. But I know change the
> > standard is not easy...
>

Re: Discussion on Bug 119639, the requirement conflicts with ODF standard

Posted by Rob Weir <ro...@apache.org>.
On Fri, Jul 20, 2012 at 2:11 AM, Clarence GUO <cl...@gmail.com> wrote:
> HI~
> I'm investigating bug 119639. Basically I need ODF standard to support
> chart:percentage attribute not only in <chart:plot-area> applied style but
> also in <chart:series> applied style. However ODF v1.2 says for
> chart:percentage attribute "This attribute is evaluated for chart styles
> that are applied to a <chart:plot-area> element.". So the requirement is
> conflict with the ODF standard. So is there any method can satisfy my
> requirement without ODF standard change? The details please reference below
> explanation. I also post it as comment to this bug.
>

Two possibilities:

1) Generally we should avoid reinterpreting existing ODF
elements/attributes.  But if we believe that something in ODF is
ambiguous or wrong, then we can make a proposal to the OASIS ODF TC to
adjust the meaning of existing ODF markup.  The main restriction here
is that the ODF TC will generally not make changes that would break
existing documents or implementations.

2) If we need to make a bigger change, ODF allows implementors to
extend it.  So we can add new elements and attributes, but they cannot
be in an ODF namespace.   We need to put the new markup in our own XML
namespace.

If we need to extend ODF I'd recommend also:

a) We track on a special wiki page exactly what additions we make to
the document format.

b) We think carefully about backwards compatibility and how the new
markup will be treated by other applications

c) If we think the new feature would be useful to other editors we can
propose adding it to ODF 1.3, as an official part of the standard.

-Rob

> The chart in the sample is not a standard chart but a composite chart.
> Series 1, 2 and 4 are percent stacked columns which were applied to the
> main Y axis, while series 3 is normal column which was applied to the
> secondary Y axis. So series 3 will cover some part of Series 1, 2 and 4.
> MS Office supports such chart. It can set one or more data series to
> another chart type. AOO's UI cannot do this. But the chart kernal function
> supports. So when open the sample file the chart looks OK. However, the ODF
> format doesn't support this, that why after save the sample to ods and
> reopen, the chart becomes incorrect(Series 3 occupy 100% space of the
> percent stacked column).
> The reason is AOO defined a style 'ch4' and applied to <chart:plot-area>.
> In this style, the chart:percentage attribute was set to true. This
> attribute specifies a percentage accumulation of values per category.
> Because this style was applied to <chart:plot-area>, then all data series
> are regarded as percent columns. And series 3 is a unique data series which
> applied to the secondary Y axis. So it occpy the total 100% space so that
> other data series are all covered.
> If want to fix this defect, must move chart:percentage attribute from the
> style which applied to <chart:plot-area> to the style which applied to
> <chart:series>. However, for this attribute, ODF 1.2 says "This attribute
> is evaluated for chart styles that are applied to a <chart:plot-area>
> element.". So my requirement is conflict with the ODF standard.
> Then how can I fix this defect? It seems the only way is to change the
> standard and change the corresponding filter code. But I know change the
> standard is not easy...

Re: Discussion on Bug 119639, the requirement conflicts with ODF standard

Posted by Andrea Pescetti <pe...@apache.org>.
On 20/07/2012 Clarence GUO wrote:
> Then how can I fix this defect? It seems the only way is to change the
> standard and change the corresponding filter code. But I know change the
> standard is not easy...

It is not easy, but not impossible either. See these resources where you 
can see that committers from this project already managed to extend ODF 
successfully:
https://wiki.oasis-open.org/office/Text_overline
http://www.robweir.com/blog/2008/04/suggesting-odf-enhancements.html
https://lists.oasis-open.org/archives/office-comment/200803/msg00000.html

If I recall correctly, in that case OpenOffice supported the enhancement 
before the official ODF specification did (I won't discuss here whether 
this is a good or a bad thing, but this is just to say that even if 
changing ODF is not easy, applications have implemented changes earlier 
than they were made official; and I may be wrong on this specific example).

Regards,
   Andrea.