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: Re: [office] Associating a shape with another shape as its datasource


Dear TC members,

I have just noticed that I missed to forward the following reply from 
Björn Milcke.

Best regards

Michael



Hi David, TC members,

 > /Subject/: *Associating a shape with another shape as its datasource*
 >
 >     * /From/: *David Faure <faure@kde.org>*
 >     * /To/: office@lists.oasis-open.org
 >     * /Date/: Wed, 21 Nov 2007 23:21:32 +0100
 >
 > ------------------------------------------------------------------------
 > It was pointed out to me that there is a use case for defining that a 
table
 > (that could be in an embedded spreadsheet, or in a text document)
 > is the data source for a chart.
 > Imagine a text document with an embedded spreadsheet and another embedded
 > object which is a chart (the chart is NOT inside the spreadsheet).
 > Is there already a way to say "this table is the data source for the 
chart"?
 > I didn't find a way, so I would like to request one.
 >
 > My idea would be a new attribute chart:data-source-table-name whose 
value would be the table:name
 > of the table (whether it comes from text content or from 
office:spreadsheet)...
 > Hmm, this assumes table names are unique, which brings back a recent 
discussion
 > to mind about unique ids... iirc we decided that page names would be 
enforced to be unique,
 > right? So we could do the same with table names --- except that if 
they appear to
 > the user then we need a display-name :-)
 >
 > --
 > David Faure, faure@kde.org, sponsored by Trolltech to work on KDE,
 > Konqueror (http://www.konqueror.org), and KOffice 
(http://www.koffice.org).
 >

The name of a table or sheet is contained in the ranges that are used at 
different places of the chart, e.g. different objects can take data from 
Sheet1 and Sheet2 of a spreadsheet. So the table names are already 
contained in the specification. The only thing missing is an 
identification of the document in which the tables/sheets are contained.

So the extra attribute we would need in the described scenario would 
rather be the document into which the ranges point. Currently, we have 
two situations:

* a chart has its own data -> means use the chart itself, i.e. "."

* a chart takes the data from the container document -> data comes from 
the parent stream in the package, i.e. ".."

So, technically I would suggest an xlink:href element instead, that 
points either to "." or to "..". In addition you could use "../Object 
2", where Object 2 is an embedded spreadsheet, text document or whatever 
"data provider", like you describe in your scenario.

The advantage of this is, that we have one attribute to describe the 
current situation ("." and ".."), which can be extended by allowing any 
URL into the package, like "../Object 2", and maybe later to other URLs 
like "http://www.something.com/mysheet.ods"; (is that so?)

On the other hand, I am not so sure if this really works out. First of 
all, we would have to make clear that only a certain subset of links is 
allowed. Then, I am not sure how to implement such a relative link into 
another object. The other object might not yet be loaded, so it would 
have to be loaded while the first object (the chart) is still in the 
middle of its loading process (at least in our implementation, that 
requires the data provider during load time).

Also, if a link points to a data source that is currently not 
accessible, we would also need to have proper cached data. In particular 
we would need a range-string pointing into the local-table in parallel 
to every existing range string, and also the range-strings to the 
external data must be remembered in case the document gets loaded. What 
do you do meanwhile? You can not add a new data series when the 
data-source is not available. Would that be feasible, or should it be 
allowed getting mixed data (some local, some from the external document).

I know, these are partly implementation problems, and we are talking 
about a specification. But when we specify a new attribute we should 
also be able to implement it in a correct way.

So, I think in the long run an xlink:href might be the right choice, but 
I am not sure if it is a good point of time to add it right now, 
Wouldn't it suffice to add a complete, prototype-tested set of 
elements/attributes that allow this thing after ODF 1.2? Is this 
scenario really that important that we need the extension right now?

Regards,
-Bjoern Milcke


-- 
Michael Brauer, Technical Architect Software Engineering
StarOffice/OpenOffice.org
Sun Microsystems GmbH             Nagelsweg 55
D-20097 Hamburg, Germany          michael.brauer@sun.com
http://sun.com/staroffice         +49 40 23646 500
http://blogs.sun.com/GullFOSS

Sitz der Gesellschaft: Sun Microsystems GmbH, Sonnenallee 1,
	   D-85551 Kirchheim-Heimstetten
Amtsgericht Muenchen: HRB 161028
Geschaeftsfuehrer: Thomas Schroeder, Wolfgang Engels, Dr. Roland Boemer
Vorsitzender des Aufsichtsrates: Martin Haering


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