OASIS Open Document Format for Office Applications (OpenDocument) TC

  • 1.  Fw: Proposal: Add multiple cell ranges support to Data Pilot

    Posted 07-03-2008 07:45

    The following is the proposal from Symphony Spreadsheet team. Thanks.

    Best Regards,
    Helen Yue

    _________________________________________________________

    Yue Zhi Yu  |
     Manager of User Experience & Applications, Lotus Symphony |  yuezhiyu@cn.ibm.com
    (8610)82452783 (phone) | 90-52783 (tie-line) | IBM China Development Laboratory


    ----- Forwarded by Zhi Yu Yue/China/IBM on 07/03/2008 03:37 PM -----
    From: Su Ying Rui/China/IBM
    To: Zhi Yu Yue/China/IBM@IBMCN
    Cc: Xu Ming Wang/China/IBM@IBMCN, Yue MA/China/IBM@IBMCN, Ming Fei Jia/China/IBM@IBMCN
    Date: 07/03/2008 03:12 PM
    Subject: Proposal: Add multiple cell ranges support to Data Pilot




    Data pilot is one useful way to analyze and evaluate data. In current ODF specification (v1.2 draft 7), the source of the data pilot table can be a cell range located within the same document. However, multiple cell ranges as data source are required in many cases. The following proposal below is aimed to add the multiple cell ranges support as data source of data pilot. In this case, the data pilot function will combine the multiple cell ranges as the source into one data pilot table. The following is the proposal:

    8.9 <table:data-pilot-tables>

    8.9.1.1 Data Pilot Table Source

    The source of the data pilot table is either stored in a database, that is, a database table itself, a SQL query or a named query, or it is a list of cell ranges located within the same document. It can also be provided by an external component in an implementation dependent way.
    The source of the data pilot table is specified by one of the following elements that are contained in the <table:data-pilot-table> element:
    • <table:database-source-sql>. See .
    • <table:database-source-table>. See.
    • <table:database-source-query>. See .
    • <table:source-cell-range>. See .
    • <table:source-cell-ranges> See 8.9.3.
    • <table:source-service>. See .

    8.9.2 <table:source-cell-range>
    ...

    8.9.3 <table:source-cell-ranges>

    If the source of a data pilot table is a list of cell ranges, the <table:source-cell-ranges> element contains information about the cell ranges and how the data pilot table gets the data from the ranges. Before the source data is processed by the data pilot data, a filter may be applied to it. This filter has to be specified by a <table:filter> child element.

    <define name="table-source-cell-ranges">
            <element name="table:source-cell-ranges">
                    <ref name="table-source-cell-ranges-attlist"/>
                    <optional>
                            <ref name="table-filter"/>
                    </optional>
            </element>
    </define>

    8.9.4 <table:source-service>

    Best Regards

    Rui SuYing(芮苏英)
    User Experience & Applications,
    IBM Lotus Symphony,
    IBM China Software Development LAB, Beijing

    http://www.ibm.com/software/lotus/symphony/

    Tel: 86-10-82452814  
    Internet E-mail: ruisuy@cn.ibm.com
    Address: 2/F, DeShi Building No.9, East Road, ShangDi, Haidian District,  Beijing 100085, PRC



  • 2.  Re: [office] Fw: Proposal: Add multiple cell ranges support to Data Pilot

    Posted 07-03-2008 14:10

    Hi Helen,

    Would it be possible for you to enter this in the New Proposal Form format on the Wiki?

    See step 2 described here:  http://wiki.oasis-open.org/office/How_to_propose_a_change_or_addition_to_ODF

    -Rob



    Zhi Yu Yue <yuezhiyu@cn.ibm.com>

    07/03/2008 03:57 AM

    To
    office@lists.oasis-open.org
    cc
    Subject
    [office] Fw: Proposal: Add multiple cell ranges support to Data Pilot






    The following is the proposal from Symphony Spreadsheet team. Thanks.

    Best Regards,
    Helen Yue

    _________________________________________________________

    Yue Zhi Yu  |
     Manager of User Experience & Applications, Lotus Symphony |  yuezhiyu@cn.ibm.com
    (8610)82452783 (phone) | 90-52783 (tie-line) | IBM China Development Laboratory


    ----- Forwarded by Zhi Yu Yue/China/IBM on 07/03/2008 03:37 PM -----
    From: Su Ying Rui/China/IBM
    To: Zhi Yu Yue/China/IBM@IBMCN
    Cc: Xu Ming Wang/China/IBM@IBMCN, Yue MA/China/IBM@IBMCN, Ming Fei Jia/China/IBM@IBMCN
    Date: 07/03/2008 03:12 PM
    Subject: Proposal: Add multiple cell ranges support to Data Pilot





    Data pilot is one useful way to analyze and evaluate data. In current ODF specification (v1.2 draft 7), the source of the data pilot table can be a cell range located within the same document. However, multiple cell ranges as data source are required in many cases. The following proposal below is aimed to add the multiple cell ranges support as data source of data pilot. In this case, the data pilot function will combine the multiple cell ranges as the source into one data pilot table. The following is the proposal:


    8.9 <table:data-pilot-tables>


    8.9.1.1 Data Pilot Table Source


    The source of the data pilot table is either stored in a database, that is, a database table itself, a SQL query or a named query, or it is a list of cell ranges located within the same document. It can also be provided by an external component in an implementation dependent way.

    The source of the data pilot table is specified by one of the following elements that are contained in the <table:data-pilot-table> element:
    • <table:database-source-sql>. See .
    • <table:database-source-table>. See.
    • <table:database-source-query>. See .
    • <table:source-cell-range>. See .
    • <table:source-cell-ranges> See 8.9.3.
    • <table:source-service>. See .

    8.9.2 <table:source-cell-range>

    ...


    8.9.3 <table:source-cell-ranges>


    If the source of a data pilot table is a list of cell ranges, the <table:source-cell-ranges> element contains information about the cell ranges and how the data pilot table gets the data from the ranges. Before the source data is processed by the data pilot data, a filter may be applied to it. This filter has to be specified by a <table:filter> child element.


    <define name="table-source-cell-ranges">

           <element name="table:source-cell-ranges">

                   <ref name="table-source-cell-ranges-attlist"/>

                   <optional>

                           <ref name="table-filter"/>

                   </optional>

           </element>

    </define>

    8.9.4 <table:source-service>

    Best Regards

    Rui SuYing(芮苏英)
    User Experience & Applications,
    IBM Lotus Symphony,
    IBM China Software Development LAB, Beijing

    http://www.ibm.com/software/lotus/symphony/

    Tel: 86-10-82452814  
    Internet E-mail: ruisuy@cn.ibm.com
    Address: 2/F, DeShi Building No.9, East Road, ShangDi, Haidian District,  Beijing 100085, PRC



  • 3.  Re: [office] Fw: Proposal: Add multiple cell ranges support to Data Pilot

    Posted 08-04-2008 03:42

    Sorry that I lost track of this thread...I have updated the form here per the instructions. Thanks.

    http://wiki.oasis-open.org/office/Add_multiple_cell_ranges_support_to_Data_Pilot?highlight=%28CategoryNewProposal%5Cb%29%7C%28CategoryCategory%5Cb%29%7C%28ProposalTemplate%5Cb%29

    Best Regards,
    Helen Yue

    _________________________________________________________

    Yue Zhi Yu  |
     Manager of User Experience & Applications, Lotus Symphony |  yuezhiyu@cn.ibm.com


    From: robert_weir@us.ibm.com
    To: Zhi Yu Yue/China/IBM@IBMCN
    Cc: office@lists.oasis-open.org
    Date: 07/03/2008 10:49 PM
    Subject: Re: [office] Fw: Proposal: Add multiple cell ranges support to Data Pilot






    Hi Helen,


    Would it be possible for you to enter this in the New Proposal Form format on the Wiki?


    See step 2 described here:  
    http://wiki.oasis-open.org/office/How_to_propose_a_change_or_addition_to_ODF

    -Rob



    Zhi Yu Yue <yuezhiyu@cn.ibm.com>

    07/03/2008 03:57 AM


    To
    office@lists.oasis-open.org
    cc
    Subject
    [office] Fw: Proposal: Add multiple cell ranges support to Data Pilot








    The following is the proposal from Symphony Spreadsheet team. Thanks.

    Best Regards,
    Helen Yue

    _________________________________________________________

    Yue Zhi Yu  |
     Manager of User Experience & Applications, Lotus Symphony |  yuezhiyu@cn.ibm.com
    (8610)82452783 (phone) | 90-52783 (tie-line) | IBM China Development Laboratory


    ----- Forwarded by Zhi Yu Yue/China/IBM on 07/03/2008 03:37 PM -----
    From: Su Ying Rui/China/IBM
    To: Zhi Yu Yue/China/IBM@IBMCN
    Cc: Xu Ming Wang/China/IBM@IBMCN, Yue MA/China/IBM@IBMCN, Ming Fei Jia/China/IBM@IBMCN
    Date: 07/03/2008 03:12 PM
    Subject: Proposal: Add multiple cell ranges support to Data Pilot






    Data pilot is one useful way to analyze and evaluate data. In current ODF specification (v1.2 draft 7), the source of the data pilot table can be a cell range located within the same document. However, multiple cell ranges as data source are required in many cases. The following proposal below is aimed to add the multiple cell ranges support as data source of data pilot. In this case, the data pilot function will combine the multiple cell ranges as the source into one data pilot table. The following is the proposal:


    8.9 <table:data-pilot-tables>


    8.9.1.1 Data Pilot Table Source


    The source of the data pilot table is either stored in a database, that is, a database table itself, a SQL query or a named query, or it is a list of cell ranges located within the same document. It can also be provided by an external component in an implementation dependent way.

    The source of the data pilot table is specified by one of the following elements that are contained in the <table:data-pilot-table> element:
    • <table:database-source-sql>. See .
    • <table:database-source-table>. See.
    • <table:database-source-query>. See .
    • <table:source-cell-range>. See .
    • <table:source-cell-ranges> See 8.9.3.
    • <table:source-service>. See .

    8.9.2 <table:source-cell-range>

    ...


    8.9.3 <table:source-cell-ranges>


    If the source of a data pilot table is a list of cell ranges, the <table:source-cell-ranges> element contains information about the cell ranges and how the data pilot table gets the data from the ranges. Before the source data is processed by the data pilot data, a filter may be applied to it. This filter has to be specified by a <table:filter> child element.


    <define name="table-source-cell-ranges">

          <element name="table:source-cell-ranges">

                  <ref name="table-source-cell-ranges-attlist"/>

                  <optional>

                          <ref name="table-filter"/>

                  </optional>

          </element>

    </define>

    8.9.4 <table:source-service>

    Best Regards

    Rui SuYing(芮苏英)
    User Experience & Applications,
    IBM Lotus Symphony,
    IBM China Software Development LAB, Beijing


    http://www.ibm.com/software/lotus/symphony/

    Tel: 86-10-82452814  
    Internet E-mail: ruisuy@cn.ibm.com
    Address: 2/F, DeShi Building No.9, East Road, ShangDi, Haidian District,  Beijing 100085, PRC



  • 4.  Re: [office] Fw: Proposal: Add multiple cell ranges support toData Pilot

    Posted 07-03-2008 14:39
    On Thu, 2008-07-03 at 15:57 +0800, Zhi Yu Yue wrote:
    
    > 8.9.3 


  • 5.  Re: [office] Fw: Proposal: Add multiple cell ranges support to Data Pilot

    Posted 07-04-2008 06:22

    Hello Kohei,

    Changing the existing table:cell-range-address attribute to allow a list of cell range addresses seems not appropriate because "cell-range-address" is just a single range, and can not contain the meaning of multiple ranges. But based on your idea, I can suggest 2 options for this proposal:

    Option 1: define <table:table-source-cell-ranges> which contains more than one child element <table:table-source-cell-range>. The schema looks like:

       <define name="table-source-cell-ranges">
             <element name="table:source-cell-ranges">
      <oneOrMore>

      <ref name=table-source-cell-range>
      </oneOrMore>
              </element>
       </define>

    Option 2: use the existing attribute <table-source-cell-range-addresses> (draft 7.v2, 18.963 ) to define the element <table:table-source-cell-ranges>. The schema looks like:
      <define name="table-source-cell-ranges">
              <element name="table:source-cell-ranges">
                      <ref name="table-source-cell-ranges-attlist"/>
                      <optional>
                              <ref name="table-filter"/>
                      </optional>
              </element>
      </define>
      <--Sure, table-source-cell-ranges-attlist is not existed in the current spec, this proposal need to define it:-->

      <define name="table-source-cell-ranges-attlist" combine="interleave">
      <attribute name="table:source-cell-range-addresses">
      <ref name="cellRangeAddressList"/>
      </attribute>
      </define>


    Best Regards,

    Mingfei Jia(贾明飞)
    IBM Lotus Symphony Development
    IBM China Software Development LAB, Beijing
    Tel: 86-10-82452493 Fax: 86-10-82452887
    NOTES:Ming Fei Jia/China/IBM E-mail: jiamingf@cn.ibm.com
    Address: 4/F, DeShi Building No.9, East Road, ShangDi, Haidian District, Beijing 100085, PRC

    Kohei Yoshida ---07/03/2008 10:58:34 PM---On Thu, 2008-07-03 at 15:57 +0800, Zhi Yu Yue wrote:


    From:

    Kohei Yoshida <kyoshida@novell.com>

    To:

    Zhi Yu Yue/China/IBM@IBMCN

    Cc:

    office@lists.oasis-open.org

    Date:

    07/03/2008 10:58 PM

    Subject:

    Re: [office] Fw: Proposal: Add multiple cell ranges support to Data Pilot





    On Thu, 2008-07-03 at 15:57 +0800, Zhi Yu Yue wrote:

    > 8.9.3 <table:source-cell-ranges>
    >
    > If the source of a data pilot table is a list of cell ranges, the
    > <table:source-cell-ranges> element contains information about the cell
    > ranges and how the data pilot table gets the data from the ranges.
    > Before the source data is processed by the data pilot data, a filter
    > may be applied to it. This filter has to be specified by a
    > <table:filter> child element.
    >
    > <define name="table-source-cell-ranges">
    >         <element name="table:source-cell-ranges">
    >                 <ref name="table-source-cell-ranges-attlist"/>
    >                 <optional>
    >                         <ref name="table-filter"/>
    >                 </optional>
    >         </element>
    > </define>

    I don't see the definition of table-source-cell-ranges-attlist.  I
    believe that's an accidental omission.

    More importantly, if we can change the existing table:cell-range-address
    attribute to allow a list of cell range addresses, instead of just one
    cell range like it currently allows, then we won't need to introduce a
    new element to define multiple source ranges.  I personally like that
    approach better because if we allow both <table:source-cell-range> and
    <table:source-cell-ranges> as child elements of
    <table:data-pilot-table>, then we would need to specify a desired
    behavior if both <table:source-cell-range> and
    <table:source-cell-ranges> are given.  IMO limiting to just allowing one
    of these elements, instead of allowing both would be a better approach.

    What are your thoughts on these points?

    Kohei

    --
    Kohei Yoshida - OpenOffice.org Engineer - Novell, Inc.
    <kyoshida@novell.com>


    ---------------------------------------------------------------------
    To unsubscribe from this mail list, you must leave the OASIS TC that
    generates this mail.  You may a link to this group and all your TCs in OASIS
    at:
    https://www.oasis-open.org/apps/org/workgroup/portal/my_workgroups.php 




  • 6.  Re: [office] Fw: Proposal: Add multiple cell ranges supportto Data Pilot

    Posted 07-07-2008 14:31
    Hello Fei Jia (or how should I address you properly?),
    
    On Fri, 2008-07-04 at 14:35 +0800, Ming Fei Jia wrote:
    > Hello Kohei,
    > 
    > Changing the existing table:cell-range-address attribute to allow a
    > list of cell range addresses seems not appropriate because
    > "cell-range-address" is just a single range, and can not contain the
    > meaning of multiple ranges. 
    
    You're correct; the current spec does not allow multiple cell ranges to
    be given in this attribute.  What I was proposing was to change the
    current schema definition for the attribute from cellRangeAddress to
    cellRangeAddressList so that including a list of cell ranges would be
    legal.
    
    > But based on your idea, I can suggest 2 options for this proposal:
    > 
    > Option 1: define 


  • 7.  Re: [office] Fw: Proposal: Add multiple cell ranges support to Data Pilot

    Posted 07-08-2008 17:49

    Kohei Yoshida ---07/07/2008 10:46:43 PM---Hello Fei Jia (or how should I address you properly?),


    From:

    Kohei Yoshida <kyoshida@novell.com>

    To:

    Ming Fei Jia/China/IBM@IBMCN

    Cc:

    office@lists.oasis-open.org

    Date:

    07/07/2008 10:46 PM

    Subject:

    Re: [office] Fw: Proposal: Add multiple cell ranges support to Data Pilot




    Hello Fei Jia (or how should I address you properly?),

    On Fri, 2008-07-04 at 14:35 +0800, Ming Fei Jia wrote:
    > Hello Kohei,
    >
    > Changing the existing table:cell-range-address attribute to allow a
    > list of cell range addresses seems not appropriate because
    > "cell-range-address" is just a single range, and can not contain the
    > meaning of multiple ranges.

    >You're correct; the current spec does not allow multiple cell ranges to
    >be given in this attribute.  What I was proposing was to change the
    >current schema definition for the attribute from cellRangeAddress to
    >cellRangeAddressList so that including a list of cell ranges would be
    >legal.

    Actually, I mean it is not appropriate to propose that extend "table:cell-range-address" to include multi cell ranges.

    > But based on your idea, I can suggest 2 options for this proposal:
    >
    > Option 1: define <table:table-source-cell-ranges> which contains more
    > than one child element <table:table-source-cell-range>. The schema
    > looks like:
    >        
    >          <define name="table-source-cell-ranges">
    >                <element name="table:source-cell-ranges">
    >         <oneOrMore>
    >         <ref name=table-source-cell-range>
    >         </oneOrMore>
    >                 </element>
    >          </define>

    >This would allow potentially different filters to be applied to each of
    >the source cell ranges, while the original proposal would only allow one
    >filter for all the specified cell ranges.  So, I'm personally a little
    >hesitant on Option 1.
    It seems there is no reason we restrict all the specified cell ranges to only one filter condition. IMO, this option seems more smoothly because it builds upon the existed element <table:source-cell-range>, as well as resolve the relationship between <table:source-cell-ranges> and <table:source-cell-ranges>. Here the problem is that when only one cell range is the table source, according to the above definition, both <table:source-cell-range> and <table:source-cell-ranges> can express the source. So I suggest to change the above tag <oneOrMore> to <twoOrMore>. The means, when only one cell range as table source, we use <table:source-cell-range>, when more than 1(>=) cell ranges as table source, we use <table:source-cell-ranges>.


    >
    > Option 2: use the existing attribute
    > <table-source-cell-range-addresses> (draft 7.v2, 18.963 ) to define
    > the element <table:table-source-cell-ranges>. The schema looks like:
    >         <define name="table-source-cell-ranges">
    >                 <element name="table:source-cell-ranges">
    >                         <ref
    >         name="table-source-cell-ranges-attlist"/>
    >                         <optional>
    >                                 <ref name="table-filter"/>
    >                         </optional>
    >                 </element>
    >         </define>
    >         <--Sure, table-source-cell-ranges-attlist is not existed in
    >         the current spec, this proposal need to define it:-->
    >        
    >         <define name="table-source-cell-ranges-attlist"
    >         combine="interleave">
    >         <attribute name="table:source-cell-range-addresses">
    >         <ref name="cellRangeAddressList"/>
    >         </attribute>
    >         </define>

    >This is the original proposal with the attribute defined.  I personally
    >prefer this to Option 1.  

    Right.

    >I would still think that we should specify
    >what to do when both <table:source-cell-range> and
    ><table:source-cell-ranges> are given, or when <table:source-cell-range>
    >is given but <table:source-cell-ranges> is not.

    >Also when saving, should an ODF application create just the
    ><table:source-cell-ranges> element, or should it create both
    ><table:source-cell-range> and <table:source-cell-ranges> for backward
    >compatibility?  If so, which range should be given in the
    ><table:source-cell-range> element?

    Like the option 1 change, if we add the restriction that <table;source-cell-range> only applies to one cell range scenario, and <table:source-cell-ranges> only applies to more than 1(>=2) cell ranges scenario. Your 2 issues should be resolved.

    >IMO, changing the existing attribute definition for
    >table:cell-range-address to allow multiple cell ranges (as I proposed in
    >my previous post) would eliminate this backward compatibility issue.
    >The only drawback with this would be the inconsistency with the
    >attribute name (a singular "address" name containing multiple
    >addresses).  But there is a precedence for this, especially in the
    >definition of the chart data.  Take a look at the following schema
    >definitions:

    >  * chart-title-attlist
    >  * chart-plot-area-attlist
    >  * chart-categories
    >  * chart-series-attlist
    >  * chart-domain

    >where a list of cell ranges are allowed in a singularly-named attribute.
    >So, at least we won't be the first one to break the inconsistency here.

    >Do other people on this list have any opinion on this?

    Purely naming issue. IMHO, we adopt this work around solution only we have no better alternative.


    Kohei

    --
    Kohei Yoshida - OpenOffice.org Engineer - Novell, Inc.
    <kyoshida@novell.com>




  • 8.  Re: [office] Fw: Proposal: Add multiple cell ranges support to Data Pilot

    Posted 08-04-2008 03:50

    Thans Kohei and Mei Fei for your discussion.

    It's a good point. The first thought came to me, same as Kohei, was to replace the existing attribute "table:source-cell-range" with the "table:source-cell-ranges". However there would be compatibility problem -- the existing files created by ODF 1.1 processor can not be read correctly by ODF 1.2 processor. Therefore I chose to approach to add one new attribute, and say in the spec that to new ODF 1.2 processor, we would suggest to use the new attribute only. I'm still open to more discussion here.

    I added the definition for "table-source-cell-ranges-attlist" in the updated form.

    Best Regards,
    Helen Yue

    _________________________________________________________

    Yue Zhi Yu  |
     Manager of User Experience & Applications, Lotus Symphony |  yuezhiyu@cn.ibm.com


    From: Kohei Yoshida <kyoshida@novell.com>
    To: Zhi Yu Yue/China/IBM@IBMCN
    Cc: office@lists.oasis-open.org
    Date: 07/03/2008 10:54 PM
    Subject: Re: [office] Fw: Proposal: Add multiple cell ranges support to        Data Pilot






    On Thu, 2008-07-03 at 15:57 +0800, Zhi Yu Yue wrote:

    > 8.9.3 <table:source-cell-ranges>
    >
    > If the source of a data pilot table is a list of cell ranges, the
    > <table:source-cell-ranges> element contains information about the cell
    > ranges and how the data pilot table gets the data from the ranges.
    > Before the source data is processed by the data pilot data, a filter
    > may be applied to it. This filter has to be specified by a
    > <table:filter> child element.
    >
    > <define name="table-source-cell-ranges">
    >         <element name="table:source-cell-ranges">
    >                 <ref name="table-source-cell-ranges-attlist"/>
    >                 <optional>
    >                         <ref name="table-filter"/>
    >                 </optional>
    >         </element>
    > </define>

    I don't see the definition of table-source-cell-ranges-attlist.  I
    believe that's an accidental omission.

    More importantly, if we can change the existing table:cell-range-address
    attribute to allow a list of cell range addresses, instead of just one
    cell range like it currently allows, then we won't need to introduce a
    new element to define multiple source ranges.  I personally like that
    approach better because if we allow both <table:source-cell-range> and
    <table:source-cell-ranges> as child elements of
    <table:data-pilot-table>, then we would need to specify a desired
    behavior if both <table:source-cell-range> and
    <table:source-cell-ranges> are given.  IMO limiting to just allowing one
    of these elements, instead of allowing both would be a better approach.

    What are your thoughts on these points?

    Kohei

    --
    Kohei Yoshida - OpenOffice.org Engineer - Novell, Inc.
    <kyoshida@novell.com>