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: Markus Mützel
Subject: [Octave-bug-tracker] [bug #59245] Implementation of xmlread/xmlwrite without Java dependency
Date: Fri, 9 Oct 2020 15:22:12 -0400 (EDT)
User-agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/85.0.4183.121 Safari/537.36 Edg/85.0.564.70

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

                 Summary: Implementation of xmlread/xmlwrite without Java
dependency
                 Project: GNU Octave
            Submitted by: mmuetzel
            Submitted on: Fri 09 Oct 2020 09:22:10 PM CEST
                Category: Octave Function
                Severity: 3 - Normal
                Priority: 5 - Normal
              Item Group: Feature Request
                  Status: None
             Assigned to: None
         Originator Name: 
        Originator Email: 
             Open/Closed: Open
                 Release: dev
         Discussion Lock: Any
        Operating System: Any

    _______________________________________________________

Details:

The io package provides the functions `xmlread` and `xmlwrite` that are
basically wrappers for the Xerces Java jar files.
I'm not sure if this (Java) is the reason why they aren't moved to core
Octave. But Philip hinted at this in the past.

My "real" goal here is to get `xlsread` and `xlswrite` into core Octave.
Those function are also provided by the io package. They are implemented using
several different interfaces. But those are either slow (the OCT interface),
rely on proprietary software (the COM interface) or need Java (the
remainder?).
IIUC, the most likely to ever be implemented in core Octave is the OCT
interface. Unfortunately, it is quite slow for reasonably large .xlsx files.
This is probably because it uses regular expressions that are getting more and
more complex to match the XML of .xlsx files.
My hopes are that using an XML parser will be easier and faster than matching
the XML with regular expressions.

There are several free C/C++ XML parsers. To be able to read and write the XML
of .xlsx files, we won't need to have full XML compliance.
Others [1] are using RapidXML [2] for that task which is supposedly very fast
and has a simple but adequate interface.

So, I gave it a shot and wrote a simple interface from Octave to RapidXML
which is more or less compatible to Matlab.
I'll upload a work-in-progress patch as soon as I have a bug number.

CC'ing Philip as the maintainer of the io package.

[1]: https://readxl.tidyverse.org/
[2]: http://rapidxml.sourceforge.net/manual.html




    _______________________________________________________

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]