[odf-discuss] Backwards compatibility and formula specs
robert_weir at us.ibm.com
robert_weir at us.ibm.com
Fri Nov 2 09:37:36 EDT 2007
I think the key insight is that there is a third thing involved that is
not so tangible to the end user -- this is the internal data model used to
represent the document in the application. The scenario when you load an
ODF document and save as Excel, this is not really a markup-->markup
translation, at least not in OpenOffice. We would load the ODF document
into our internal document model, and then when the user did a "Save As"
we would serialize it in Excel format. Certainly this process would be
easier if the spreadsheet formulas were identical in the two formats, but
this isn't true today and it really never was in the past. Some level of
formula translation is required. ODF didn't invent the problem. Excel
did when they arbitrarily diverged from 1-2-3's formula language years
ago. We've been dealing with stuff like this at Lotus for the last 15
years. Even today, for example, Lotus Symphony supports ODF, Excel binary
and 1-2-3 spreadsheet formats. The 1-2-3 spreadsheet formulas differ a
lot more from Excel's than ODF's do. So formulas need to be translated
here as well.
The exception to the above observation is how Office works with their "ODF
Add-in" (the CleverAge work). This is direct markup-level translation,
ODF-->OOOXML -->Internal memory model. In fact, if you do it on versions
of Office prior to Office 2007 it is a multiple step conversion
ODF-->OOXML-->Legacy Office Format-->Internal memory model. This long
pipeline, as you can imagine, will lead to some performance issues.
Also, keep in mind that the ODF standard says nothing about what the end
user enters with respect to formulas. You could have the user interface
of the product allow the user to enter Excel formulas, 1-2-3 formula,
XPath formulas, use a visual expression language, whatever you want. The
only requirement is that for storage in the document that you save it in
the canonical format that ODF specifies.
-Rob
___________________________
Rob Weir
Software Architect
Workplace, Portal and Collaboration Software
IBM Software Group
email: robert_weir at us.ibm.com
phone: 1-978-399-7122
blog: http://www.robweir.com/blog/
odf-discuss-bounces at opendocumentfellowship.com wrote on 11/02/2007
07:58:02 AM:
> Marco wrote:
> > Since honestly I have had no time before to document myself on this, I
> > welcome, here or offlist, relevant links to detailed explanation and
> > examples, thanks. Now:
>
> Search Rob Weir's blog for the issue with leap years. I forget the
> other examples, but Rob Weir and David A. Wheeler might remember
> more. I think this list is a good place for this discussion.
>
> > please hold my hand for a moment, I am surely missing some piece of
> > the puzzle here. Theoretically, Excel, Calc or any other program can:
> >
> > 1) create new .ods files, or open and edit existing ones, always
> > dealing with formulas as per ODF 1.2,
> >
> > AND, at the same time,
> >
> > 2) Open, save or display .xls files, always dealing with their
> > formulas as per "the MS/Excel/OOXML way", whatever that means.
> >
> > Right?
> >
> > If yes, doesn't the problem exist ONLY when you want to convert .ods
> > to .xls or vice versa?
>
> Hmm... "yes and no"
>
> Applications that read ODF do so by parsing the XML and converting
> it into the application's internal data structures. In this way,
> converting between formats may be an unavoidable step to be able to
> read ODF at all. So reading ODF may be synonymous with converting
> between the two formats.
>
> Maybe one of the KDE or Gnome developers on this list can answer
> your question better.
>
> Hope that helps.
>
> Cheers,
> Daniel.
> _______________________________________________
> odf-discuss mailing list
> odf-discuss at opendocumentfellowship.com
> http://lists.opendocumentfellowship.com/mailman/listinfo/odf-discuss
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.opendocumentfellowship.com/pipermail/odf-discuss/attachments/20071102/adbb4616/attachment-0001.htm
More information about the odf-discuss
mailing list