Abstract
Financial information is reported by public companies to regulators worldwide using a standard rich structured data format, the “Extensible Business Reporting Language”, or XBRL An XBRL report typically comprises two pieces: a file with instance data, made of financial facts contextualised with dates and hypercube dimensions, plus its background ontological information: potentially dozens of files with data element schema and hypercube definitions, hierarchical presentation directives, assertions - a tree graph of XML schema and linkbase resources published on the web.
Pacioli takes all that and converts it into a PROLOG representation, evaluates XBRL formulas, derives new facts, detects higher level patterns, executes diverse types of validation rules, and produces a validation report in multiple formats. It works both as a standalone web application server, and as part of a massive blockchain-coordinated network of validation engines.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Notes
- 1.
Auditchain, Pacioli Logic and Rules Engine, https://docs.auditchain.finance/auditchain-protocol/pacioli-logic-and-rules-engine.
- 2.
https://ipfs.io, the “InterPlanetary File System”, a decentralized, redundant, robust file storage service.
- 3.
- 4.
Pacioli Technical Analysis report saved to IPFS, https://auditchain.infura-ipfs.io/ipfs/QmSuMTNG1W98U3xTsJRX2cs1LxKQqGKqM9iq2w1HhsaCZB/.
- 5.
“Model” being used here in the broad sense of representation, NOT of Herbrand model. For the above example, https://auditchain.infura-ipfs.io/ipfs/QmSuMTNG1W98U3xTsJRX2cs1LxKQqGKqM9iq2w1HhsaCZB/ReportAndModel.pl.gzip.
- 6.
- 7.
- 8.
Namely https://pivottable.js.org/examples/ and http://tabulator.info, in addition to SWISH-generated https://graphviz.org graphs.
- 9.
Open sourcing of Pacioli is still under discussion, hence no code URL yet.
- 10.
- 11.
Potentially replacing the XULE expression language by PROLOG: https://pacioli.auditchain.finance/example/XULE.swinb.
- 12.
XBRL reports and rules translate into PROLOG unit clauses: the formula rule facts are meta-interpreted.
- 13.
Pacioli Analysis Summary, https://auditchain.infura-ipfs.io/ipfs/QmNUY15G1dhTXYCpyUyvqYWZ33Nc6mKRUDz7GDgLFonaPs/.
- 14.
“Blocks” emerged from professional practice and are informally explained in Sect. 3.3 of http://accounting.auditchain.finance/framework/LogicalTheoryDescribingFinancialReport.pdf.
- 15.
Full list for this report in https://auditchain.infura-ipfs.io/ipfs/QmNUY15G1dhTXYCpyUyvqYWZ33Nc6mKRUDz7GDgLFonaPs/blocks.html.
- 16.
Rendering of information block, https://auditchain.infura-ipfs.io/ipfs/QmNUY15G1dhTXYCpyUyvqYWZ33Nc6mKRUDz7GDgLFonaPs/01ecbc0ceca6b093c221.html#0fb66fa8527c7cb7ec08.
- 17.
- 18.
Full value assertions list in https://auditchain.infura-ipfs.io/ipfs/QmNUY15G1dhTXYCpyUyvqYWZ33Nc6mKRUDz7GDgLFonaPs/valueAssertions.html.
References
XBRL International, Introduction to XBRL. https://www.xbrl.org/introduction/
XBRL International, XBRL Specifications. https://specifications.xbrl.org/specifications.html
XBRL International, iXBRL, https://www.xbrl.org/the-standard/what/ixbrl/
Charles Hoffman, CPA, Seattle Method. https://xbrlsite.com/seattlemethod/SeattleMethod.pdf
US Generally Accepted Accounting Principles. https://www.cfainstitute.org/en/advocacy/issues/gaap#sort=%40pubbrowsedate%20descending
Fundamental Accounting Concepts. https://accounting.auditchain.finance/fac/Index.html
US-GAAP taxonomy. https://accounting.auditchain.finance/reporting-scheme/us-gaap/documentation/Index.html
SWISH: SWI-Prolog for Sharing source repository. https://github.com/SWI-Prolog/swish
Tutorial - Creating Web Applications in SWI-Prolog. https://github.com/Anniepoo/swiplwebtut/blob/master/web.adoc#termerized-html-syntax
Jason Meyers, personal communication, Auditchain’s. https://www.linkedin.com/feed/update/urn:li:activity:7044740816300351489?updateEntityUrn=urn%3Ali%3Afs_feedUpdate%3A%28V2%2Curn%3Ali%3Aactivity%3A7044740816300351489%29 LinkedIn page
Acknowledgement
To Jason Meyers and the Auditchain early investors, for betting Auditchain on Pacioli; to Jacinto Dávila for help with Pacioli and for his Auditchain Explorer UI; to Bogdan Fiedur for the blockchain agent and Auditchain smartcontracts; to Christopher Jastrzebski for all the support, and his Auditchain Web3 UI; to Fuad Begic for the complementary Luca report editor under development; to Andrew Noble and Dudley Gould for encouragement and suggestions. To Jan Wielemaker and associates, for a software stack that finally made PROLOG feasible for business applications. And finally, to Bob Kowalski: for his vision half century ago, and all the personal support in recent years.
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2023 The Author(s), under exclusive license to Springer Nature Switzerland AG
About this chapter
Cite this chapter
Calejo, M., Hoffman, C. (2023). Pacioli: A PROLOG System for Financial Report Processing. In: Warren, D.S., Dahl, V., Eiter, T., Hermenegildo, M.V., Kowalski, R., Rossi, F. (eds) Prolog: The Next 50 Years. Lecture Notes in Computer Science(), vol 13900. Springer, Cham. https://doi.org/10.1007/978-3-031-35254-6_20
Download citation
DOI: https://doi.org/10.1007/978-3-031-35254-6_20
Published:
Publisher Name: Springer, Cham
Print ISBN: 978-3-031-35253-9
Online ISBN: 978-3-031-35254-6
eBook Packages: Computer ScienceComputer Science (R0)