I suggest you ...

Provide an official XML schema

Provide an official, commented XML, definite schema (XSD) for others to write compatible apps. (e.g. for Android)
That's also a good idea for documentation and to verify file integrity.

1 vote
Vote
Sign in
Check!
(thinking…)
Reset
or sign in with
  • facebook
  • google
    Password icon
    I agree to the terms of service
    Signed in as (Sign out)
    You have left! (?) (thinking…)
    Marcus WolschonMarcus Wolschon shared this idea  ·   ·  Flag idea as inappropriate…  ·  Admin →
    declined  ·  Geert JanssensAdminGeert Janssens (Admin, GnuCash) responded  · 

    There is an informative RELAX NG schema that describes the current xml file format, which you can use to learn about the xml file format.

    It is however impossible to code various accounting constraints in such an xml schema (eg to enforce each transaction has a zero balance). For this reason it is formally strongly discouraged to use any external tool to modify the xml data, unless it does so via the GnuCash api.

    So there is no incentive for the GnuCash developers to spend more effort on a more elaborate xml schema.

    3 comments

    Sign in
    Check!
    (thinking…)
    Reset
    or sign in with
    • facebook
    • google
      Password icon
      I agree to the terms of service
      Signed in as (Sign out)
      Submitting...
      • Anonymous commented  ·   ·  Flag as inappropriate

        No one expects to code higher level consistency checks into a schema. But it would help keeping data consistent. Bug like #696282 wouldn't make it into the final release at all, if you have schema and validate against it while writing.

      • Marcus WolschonMarcus Wolschon commented  ·   ·  Flag as inappropriate

        The Gnucash API is not suitable in terms of languages(C only) supported, documentation(none), examples(none) and supported platforms (Desktop only).

        Offiial website about the Gnucash API:
        /Unfortunatly there doesn't exist any up-to-date coherent set of documentation./

      • Marcus WolschonMarcus Wolschon commented  ·   ·  Flag as inappropriate

        I'm sad to inform you that my unofficial XML schema and the code automatically generated from it can no longer be maintained.
        The accounting-automation tools and the unfinished Android and iOS apps for entering new expenses, barcode based inventory management and quick lookup of accounting data based on the jGnucashLib will no longer be updated.
        Automatic parsing of PDF invoices from emails, custom rules for HBCI/Paypal/Wirecard synchronisation(not bare importing) of transactions and the old code for automatic German electronic sales-tax declaration are no longer maintained.

      Feedback and Knowledge Base