Data liberation
Jump to navigation
Jump to search
Data liberation
- see also Google's effort: http://www.dataliberation.org/
The idea is that it should be easy to get data in and out of OpenPetra.org
XML/YML/CSV support
- XML: advantages: easier to handle from external programs, they can transform the data
- YML: advantages: easy to read and write for manual adjustments
- CSV: advantages: edit long lists; problems: Excel reformats and may cut off account codes etc
OpenOffice file support (OpenDocument)
- http://www.codeguru.com/csharp/csharp/cs_data/xml/article.php/c16311 How to Read and Write ODF/ODS Files (OpenDocument Spreadsheets)
- http://opendocument4all.com/content/view/13/29/ "AODL has been started by Lars Behrmann as a independent C# library for all kinds of ODF processing and in February 2007 it has become the .net module of the OpenOffice.org ODF Toolkit project. The library is completly written in pure C# and can be used to extend your .net based software to support the OpenDocument Format."
- project home: http://wiki.services.openoffice.org/wiki/AODL
Microsoft Excel file support (Office Open XML)
- see http://stackoverflow.com/questions/151005/create-excel-xls-and-xlsx-file-from-c
- see http://www.leniel.net/2009/07/creating-excel-spreadsheets-xls-xlsx-c.html
- see http://npoi.codeplex.com/ "This project is the .NET version of POI Java project at http://poi.apache.org/. POI is an open source project which can help you read/write xls, doc, ppt files. It has a wide application."
- see http://excelpackage.codeplex.com/ "ExcelPackage provides server-side generation of Excel 2007 spreadsheets. It is a set of classes and wrappers around the .NET 3.0 System.IO.Packaging API and the new Office Open XML file format."
- http://www.carlosag.net/Tools/ExcelXmlWriter/
- see also http://www.codeproject.com/KB/office/ExcelGenerator.aspx; problem with compatibility of Code Project Open License (CPOL) with GPL though; see http://en.wikipedia.org/wiki/Code_Project_Open_License_(CPOL): "The license is thus incompatible with the GPL and some other open source licenses"
Data Exchange between Software Services
This is quite different from the previous approaches, because it does not target the user, but the data exchange between software services and programs; one example could be an AJAX webclient that communicates with the server via JSON or XML.