Search Mailing List Archives
[protege-discussion] import instances from spreadsheet
csongor.nyulas at stanford.edu
Wed Mar 19 11:17:15 PDT 2008
Paul Smith wrote:
> Thanks All,
> I think I will import everything in a MySQL single table database and then
> import in Protégé via DataMaster. There are some complex relationships and
> parent objects that will be missing during operations but I am think
> that “Computing Inferred Types” service shall recover most of it. In the mean
> time hope Excel Import Plugin will start work for me too (currently I could
> not show the table), to have ready a clever second solution just in case.
Indeed DataMaster is a very powerful plugin to import databases schema
and content in Protege and works very well with data sources that have a
properly working ODBC or JDBC access. I say "properly working" because
there are some issues when querying through an ODBC connection the
"database structure" of an Excel table. I tried a couple of times to
make the import from Excel table through ODBC work but I never managed.
It seems that the Excel file must be "formatted" in some way to allow
the ODBC driver to recognize which part of the Excel sheet(s) represent
the different database tables, and I did not manage to do those
formating. Here is one of the online resources that describes the problem:
If somebody manages to define the tables inside the Excel spreadsheets,
please let us know how you did it!!!
Using a special JDBC driver that accesses Excel spreadsheets should be a
good solution. Unfortunately I have no knowledge of any such JDBC driver
that would work fine. Actually, I discovered xlSQL which is a JDBC
driver for Excel but is a little bit buggy, and the SQL query format
that expects has non-standard elements, which means that I have to
change the DataMaster plug-in to be able to communicate with the xlSQL
driver. I was thinking of doing those changes in DataMaster, but I don't
feel very comfortable with it, because some bugs from the xlSQL driver
may cause Protege unresponsive. Maybe I will try to fix the bugs in the
driver instead, if I can get access to the project. In either way, a
working solution through xlSQL is not to be expected in a month or so.
Until then, the best solution I can recommend is the one discovered by
Paul: to export your data from Excel to MySQL, create relations between
the tables if you need some, and import the data in the MySQL tables in
Protege using DataMaster.
More information about the protege-discussion