[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