« XBRL to JSON Converter | Main | Special Theory of Machine-based Automated Communication of Semantic Information of Financial Statements »

Flipping Bits: It All Distills Down to Logic Statements and Reasoning

If you grab information from one of my modern approach to creating a reporting scheme prototypes; you can see that everything distills down to a chain of logic gates that are used to construct a chain of reasoning.

For instance, grab this Excel spreadsheet that contains VBA code that extracts metadata from the US GAAP Ontology-like thing.  You can use that and other metadata to create things like:

That is more, most of the associations are very simple "from" one concept, "to" some other concept, and the nature of the relationship explained by some "arcrole".  The most complicated logic represented are the impute rules that look like this:

if (NoncurrentLiabilities = 0 and not(CurrentLiabilities = 0) and not(Liabilities = 0)) then (NoncurrentLiabilities = Liabilities - CurrentLiabilities) else (NoncurrentLiabilities = NoncurrentLiabilities)

That is the toughest software application interface that needs to be created, expressing that relationship.  Yes the volume of rules is rather large and there is a lot of professional knowledge that you need to have to create the rules; but professional accountants have that.  So, accountants will only work with LOGIC to represent knowledge of a domain that they understand.

Fundamentally, a computer is a bunch of "1s" and "0s" and everything you create is about flipping the right bits with some programming language.

What is a bit different here is that all my metadata is declarative as contrast to interpretive.  That changes the programming paradigm.  Rather than creating procedural code that is locked into one sequence of IF...THEN statements; the logic is represented via the XBRL technical syntax (instance, taxonomy schema, linkbases) and they a rules engine is used to process the logic represented via the declarative rules.

Semantics are represented in the form of models. The rules engine understands the semantics, models, and how to read the decarative metadata (logic) and can sort everything out.

This is closer to logic programming that functional programming.  This is a different paradigm than most software developers are use to.

Powerful stuff!

Posted on Tuesday, December 31, 2019 at 12:17PM by Registered CommenterCharlie in | CommentsPost a Comment

PrintView Printer Friendly Version

EmailEmail Article to Friend

Reader Comments

There are no comments for this journal entry. To create a new comment, use the form below.

PostPost a New Comment

Enter your information below to add a new comment.

My response is on my own website »
Author Email (optional):
Author URL (optional):
Post:
 
All HTML will be escaped. Hyperlinks will be created for URLs automatically.