[GNC] File Format Documentation (Bug 777893)

David T. sunfish62 at yahoo.com
Wed Aug 15 13:49:00 EDT 2018


Here is a newer version of the table:

Storage Comparison Table
 	XML	SQLite	MySQL	PostgreSQL
Installation	Default	Default	libdbi	libdbi
File extension	gnucash	gnucash	N/A	N/A
Additional software	None	None	MySQL	PostgreSQL
Additional expertise	None	None	DBMS	DBMS 
Compression	Y	N	N	N
Save on command	Y	N	N	N
Save on commit	N	Y	Y	Y
Uses log files	Y	N	N	N
Multi-user	N	N	N	N

How does that seem?

> On Aug 15, 2018, at 10:34 AM, Adrien Monteleone <adrien.monteleone at lusfiber.net> wrote:
> 
> 
> 
>> On Aug 15, 2018, at 12:11 PM, David T. <sunfish62 at yahoo.com> wrote:
>> 
>> 
>> 
>>> On Aug 15, 2018, at 10:02 AM, Adrien Monteleone <adrien.monteleone at lusfiber.net> wrote:
>>> 
>>> But it’s not a ‘plain file’ as it is XML formatted. Someone expecting plain text and trying to view it is going to be met with tag soup they’ve never seen before and might very well not know how to read it.
>> 
>> Not to mention that it’s compressed.
> 
> True, forgot about that. Certainly, they’ll see gibberish mostly.
> 
>> 
>>> 
>>> It also carries an .xml extension. So specifying the format is very specific and informative, even for users who aren’t familiar with XML. They’ll see in their file manager the extension, and/or the OS’s interpretation of the file type itself. (in this case both XML)
>> 
>> However, the file extension used is “gnucash” and not “xml”
> 
> Facepalm. I forgot about that. (I honestly rarely even look at the location where it’s stored anyway) I’d suspect unless Win10 uses the file descriptor for file type instead of the extension as was the practice through at least Win7, then no, those users won’t see XML anywhere. (if the descriptor is set as XML that is)
> 
> So I just checked on both MacOS and Ubuntu, MacOS reports the ‘Kind’ as ‘Gnucash Document’ regardless if sqlite or xml, and at least with xml, Ubuntu reports the file type as ’spreadsheet’. (yes, it’s registered to open with GnuCash, but this was built from source, so perhaps the file type was not registered properly, repo versions may vary)
> 
> So I guess on that point I was way off.
> 
> 
>> Perhaps the save process needs to be refactored to identify clearly and separately the name of the data file AND its format?
> 
> Since .gnucash is not really proprietary or somehow a special format from XML then I agree, the extension should be .xml.
> 
> Combine this with the fact that the sqlite version of the file ALSO uses the .gnucash extension can make for some confusion. At a glance, you can’t tell what the format is. You can’t even tell until you try to open it with something other than GnuCash. (or you notice that GnuCash doesn’t offer a Save option) The only reason I know which is which is I had to use filename.xml.gnucash to tell them apart. That’s a usability bug in my opinion. I don’t know how hard that is to change, but I’d support the move.
> 
> On that note, the documentation somewhere (I suppose in the ‘file > save/save as’ section) should document that the extension is currently ‘.gnucash’. A new user shouldn’t have to go to a wiki or website FAQ after reading the documentation for something this basic.
> 
> Would it be out of order to include in your table that both use this extension? If you expand the table to show MySQL and Postgres, I suppose that row would have some other note since their data stores are very different than single files. (though in this case they might store it that way, I haven’t used either to know)
> 
> Regards,
> Adrien
> 
> 
>> 
>>> 
>>> Knowing this might very well help them find their file if they know the format they are looking for.
>>> 
>>> But I do agree, the documentation should cover where files are stored. Ideally, this should be made part of the Help or Guide in the Getting Started section. It is certainly a common enough issue on the list.
>>> 
>>> Regards,
>>> Adrien
>>> 
>>>> On Aug 15, 2018, at 10:24 AM, Christoph R <subscriptions+listen at rohland.net> wrote:
>>>> 
>>>> Hi David,
>>>> 
>>>>> The default file storage format is XML
>>>> 
>>>> I would not call this “XML" but "plain file”. From a user perspective it is not important in which internal format it is stored. But it makes a big difference if it is a simple file created by Gnucash or if Gnucash needs to connect to a DBMS.
>>>> 
>>>> And one of the biggest confusion for users on the mailing list is the question: “Where is my data?”. Pointing out that all your accounts and transactions are in a simple file might reduce that problem.
>>>> 
>>>> Cheers,
>>>> Christoph
>>>> 
>> 
>> 
> 
> 
> _______________________________________________
> gnucash-user mailing list
> gnucash-user at gnucash.org
> To update your subscription preferences or to unsubscribe:
> https://lists.gnucash.org/mailman/listinfo/gnucash-user
> If you are using Nabble or Gmane, please see https://wiki.gnucash.org/wiki/Mailing_Lists for more information.
> -----
> Please remember to CC this list on all your replies.
> You can do this by using Reply-To-List or Reply-All.



More information about the gnucash-user mailing list