octave-bug-tracker
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Octave-bug-tracker] [bug #59245] Implementation of xmlread/xmlwrite wit


From: Philip Nienhuis
Subject: [Octave-bug-tracker] [bug #59245] Implementation of xmlread/xmlwrite without Java dependency
Date: Fri, 9 Oct 2020 19:07:58 -0400 (EDT)
User-agent: Mozilla/5.0 (Windows NT 6.1; rv:52.0) Gecko/20100101 Firefox/52.0

Follow-up Comment #3, bug #59245 (project octave):

Some remarks, in no particular order:

In the mxe-octave installers there's libxml2 (and libxml++). Can that also be
used? I suppose it's also in many Linux distros so if yes it may be a better
library to use.

xmlread and xmlwrite are Java based and as such highly Matlab compatible.  I'd
suppose many use cases and Matlab user code Out There are also Java based;
could that compatibility be partly or wholly lost when switching to non-Java
based parsers and other XML functions?

I'd support getting some form of xlsread and xlswrite into core Octave. Years
ago JWE wrote that he also wanted it.
If this is done IMO it should read .xlsx, .ods and if possible, .xls (BIFF8
and/or BIFF5) as many embedded systems spew out .xls. Gnumeric is a very easy
format so could also be included.

But writing .xlsx is a daunting task. The ECMA specs for the OOXML specs
comprise thick tomes and to further put you off I'd suggest to read e.g.,
this:
http://ooxmlisdefectivebydesign.blogspot.com/2007/08/microsoft-office-xml-formats-defective.html
  (hmm yet I found many useful hints in there :-) )
That said, .ods is even more complicated to handle with many implicit rules
and no address in spreadsheet cell nodes.
In the io package OOXML and ODS formats have already been sorted out (many
corner cases excluded) so that could serve for a start.

Matlab these days has readtable and writetable that can read from and write to
spreadsheets. Their interface / calling form looks much more practical than
the xlsread/xlswrite requirements of fixed but inconsistent argument order.
To implement readtable and writetable Octave needs the Table class. Andrew
Janke has made Tablicious and on the task tracker there's a task for Table I/O
based on the io package (task #15419)

@gyom:
readstruct doesn't look like it can read a spreadsheet file, can it?


    _______________________________________________________

Reply to this item at:

  <https://savannah.gnu.org/bugs/?59245>

_______________________________________________
  Message sent via Savannah
  https://savannah.gnu.org/




reply via email to

[Prev in Thread] Current Thread [Next in Thread]