Core Pattern

The core idea of XBRL is global open industry standard for information that is machine-interpretable that is also interpretable by humans (i.e. one version of information, usable by both humans and machines). This is achieved using the notion of the "information block". The meaning conveyed by that information block is expressed using the XBRL global open industry standard format.

Epistemic traceability is a trail of thought and reasoning; the ability to track exactly where a piece of information came from and why some system decided that information was true. Epistemic traceability is the audit trail or "chain of reasoning" that shows the journey information has taken from a raw observation to a final conclusion. As an information block is processed, input is changed by some process resulting in some output, that chain of reasoning is preserved. The conversion from input to output via some algorithm can be explained.

I am going to use a common analogy to help explain the notion of the information block, the Lego analogy. Lego blocks or bricks have the following fundamental characteristics:

  • Modularity: Legos are modular.  They are small modular pieces which are interchangeable with one another. There are different "modules"; bricks of different sizes, specialized pieces like wheels and windows.
  • Standardization: Every Lego brick has the same little bumps (studs) on top and holes on the bottom (tubes). Because these "interfaces" are always the same, any two pieces can snap together, no matter what they look like. The connectors are standard and you change things without breaking the system. Legos build in 1958 will connect to Legos built in 2025. Only 18 in a million Legos are rejected for quality reasons; that is how good Lego's brick making process has gotten.
  • Portability: Because Legos are standard, they are portable. For example, you can take your Legos to a friend's house and her Lego set will fit into your Lego set.
  • Reusability: With Legos, you don't need to reinvent the wheel every time you want to do something. For example, if you are building a castle and you want a tower in your castle; you don't need to reinvent the tower making process. You just use the same bricks and same approach you used to build the wall.
  • Scalability: With Legos, you can start small and scale.  With Legos you can start by building a house and then brick-by-brick turn the house into a city. You don't need a new "system" to get bigger; you just add more Lego blocks.
  • Versatile: Legos are versatile.  There is not only one type of Lego brick, there are many different types. And you can build pretty much anything with Legos.
  • Precision components: Certain Lego pieces, like wheels, are critical for specific functions and these precision components can be created and provided within the Lego system.

There are two aspects to Legos that might seem like negative qualities.  The first is the notion of "glue".  You don't glue Legos together.  In our system there is the notion of "glue"; that glue is logic.  The second notion is that of "decay". Lego bricks don't change over time. Certain types of systems do change.  This is not an issue for us as our system has the notion of "extensibility" and/or "customizability".  Our system is "flexible" or "elastic" and we have a way to control  that flexibility/elasticity.

The core pattern which describes what XBRL provides is explained in the graphic which I have provided below to which I have added some numbers to help me reference specific parts of  the graphic:

An "Information Block" is literally a block of information.  Not a block of data, a block of information.  There is a difference.  Data is not self aware. Information is self aware data. Information is data in context.  Data is interpretable only locally, for example within a specific software application. Information is interpretable globally.

For example, "241,086,000,000" is data.  But “assets for the consolidated legal entity Microsoft as 
of June 30, 2017 was $241,086,000,000 which is expressed in US dollars and rounded to 
the nearest millions of dollars"; that is information.

For a machine to be able to interpret information, that information needs to be in a form that the machine can read. XBRL is such a global open industry standard machine readable format.  But XBRL also has characteristics that make the machine interpretable also interpretable by a human.  You can represent the information one time and that information can be effectively interpreted by both a machine and a human.

Every information block has a natural (a.k.a. neutral) logical formation which can be rendered in a manner that a human can understand and work with the information.  That rendering can be dynamic. One information block can be linked to another information block logically. These links are automatic, achieved via the information in the block of information.

Information blocks enable true industrial strength "plug-and-play". How is that possible? First, information blocks deal with information, not data. Context is not locked into some proprietary application, context travels along with the information in the information block. Second, information blocks have a model that explains each of the pieces and how the pieces logically related to one another and to other information blocks including constraints, restrictions, assertions, and other conditions.

When every specific software application speaks it's own private language it is difficult to impossible for humans or machine based processes to effectively deliver the necessary cross software application insights. This is similar people that speak different languages trying to communicate effectively.  Instead of using private languages; global open industry standard physical technical formats, one common shared world view, common inference logic, and a common shared knowledge base is used. Nothing is private to one software application; everything is engineered to be exchanged.  The result; industrial strength plug-and-play; industrial artificial intelligence.


How is all this achieved?  One battle hardened global open industry standard for a business report.  I will use my "Hello World" example to explain. To see the full capabilities of XBRL, see the Showcase of Capabilities.

If you click on this link, you will see an XML file that is machine interpretable using a global open standard, XBRL. Pretty hideous to a human.  But a machine can gobble up that stuff. That link represents #1 in the graphic, a block of information. Again, that is information, not data.  For each fact you know the amount, the currency, the period, the reporting economic entity, the number of decimal places you can trust, how the fact relates to other facts, and a lot more.  A human can "see" all that information by taking the machine interpretable information and transforming it into a human readable version of that same information.

For example, here is that same information rendered as PDF and HTML. Now, the PDF and HTML is machine readable, but it is not reliably machine interpretable.  But, you can also generate Inline XBRL from the raw XBRL, here is that Inline XBRL and I have taken a screen shot of that which you can see below for context:


Here is another software application which you can use to view the exact same information in the PDF, the HTML, and the Inline XBRL shown above; click here to view the information using that tool which looks like this:


But that is not exactly what we want; I am showing you various viewing tools, but we want a human to be able to EDIT that information, not just VIEW the information. The application shown below, which is Auditchain Luca Suite, can do that:


Not only can you edit the fact values of the report, you can also edit the report model itself which is shown in this screen shot:


The last two graphics shown above provide the capability to do #2 and #6 in the initial graphic of the core pattern.  It is hard to show every detail in this two dimensional blog post, but this should help you understand the key idea which is that you have ONE VERSION of information (and it is information, not just data) which can flow through a process.

There is one additional idea that is important to point out.  Because XBRL is a global open standard many different off-the-shelf software applications support the XBRL format.  Below you see a different application reading the exact same XBRL in #1, so this would be another version of #2 or #6. (Here is a more detailed look of the application you see below)


Here is another application which can show the exact same XBRL-based information, see the screen shot below or click here and explore the information block.


A few more tidbits of information about that "Information Block":
  1. Note that the initial graphic says "Information Block(s)".  I just showed one block of information in my Hello World example.  You could have any number of information blocks; for example the 10-K report for Microsoft submitted to the SEC had 192 information blocks.
  2. The Hello World example showed on logical information pattern, a roll up. Many more information patterns are supported including a roll forward, any arithmetic pattern really, variance, correcting errors, sets of information with no mathematical relationships, or just a block of text.  See the Showcase of Capabilities for more details.
  3. The Hello World example used only the core dimensions of entity, period, and concept.  But you can add any number of noncore dimensions.  See the PROOF example for more information.
  4. XBRL is "battle tested".  The U.S. Securities and Exchange Commission (SEC) has been using XBRL for about 15 years. There are over 210 projects around the world that make use of XBRL for millions and millions of reports.
  5. While I am using XBRL technical syntax; other technical syntax can be used to represent information blocks including RDF+OWL+SHACL (i.e. the Semantic Web Stack), Graph Query Language (a.k.a. labeled property graphs), PROLOG, or even SQL.
  6. While my examples pretty much all relate to financial reporting; information blocks can be used to represent both financial and nonfinancial information.  See this Lorem Ipsum example.
  7. While I believe the Seattle Method does the best job of explaining the notion of an "information block"; the XBRL International Open Information Model (OIM) implies that notion and OMG's Standard Business Report Model (SBRM) has a similar notion which they refer to as a "fact set".  This idea of an information block is in alignment between the Seattle Method, OIM, and SBRM.
Gall's Law states that a complex system that works is invariably found to have evolved from a simple system that worked.  This principle emphasizes that effective complex systems develop from simpler, functional predecessors, and it is widely applied in fields like engineering and organizational design. The law suggests that starting with basic, operational systems and iteratively developing them is more effective than attempting to create a complex system from scratch.

The simple system is this core pattern, the information block. When a process is not 100% automatable (i.e. has both computable and non-computable aspects), humans and machines need to be able to work together effectively and collaboratively to perform work. This simple system which enables humans and machines to effectively collaborate is scalable, modular, versatile, reusable, standard, and precision components which are flexible in a controlled manner and snap together. This system is battle tested by accountants.

Formal rigor, information block, standards and norms, proper "completeness" (a.k.a. fitness for purpose, pragmatic quality) or epistemology (declaration, governance), proper management of epistemic risk, epistemic traceability which provides an "audit trail" of the chain of reasoning, industrial strength plug-and-play information sharing, the ability to “snap” information blocks together using logical linking as “glue”, and teaming of humans and machines in this workflow. All this adds up to industrial strength artificial intelligence.

The following is an informal human readable model of the pieces of an information block: (note that Artifact = Disclosure)


Additional Information:

Comments

Popular posts from this blog

Overview

Knowledge

Complexity