This web site provides information on how to use XBRL to help business users exchange business information. Business information incluldes both financial and nonfinancial information. Everything on this site made available to all under a Creative Commons License. Everything may be reused however one sees fit. All we ask is that you give credit where credit is due. If you have any questions, comments, concerns, suggestions, ideas or other feedback, please contact charles.hoffman@me.com.

The author of this web site assumes all responsibility for this web site and it's content. The views expressed on this web site are the views of the author and may not represent the views of his employer.

"In summary, logic can be used with commercial systems by people who have no formal training in logic. The fads and fallacies that block such use are the disdain by logicians for readable notations, the fear of logic by nonlogicians, and the lack of any coherent policy for integrating all development tools. The logic-based languages of the Semantic Web are useful, but they are not integrated with the SQL language of relational databases, the UML diagrams for software design and development, or the legacy systems that will not disappear for many decades to come. A better integration is possible with tools based on logic at the core, diagrams and controlled natural languages at the human interfaces, and compiler technology for mapping logic to both new and legacy software."

A reality is that people will always come up with their own approaches to doing certain things. As such, single-stack architectures might exist within one very small organization; but when you look at organizations of any size or when you have one organization interoperating with another organization you will have multi-stack architectures and each of those architectures need to interoperate.

One architecture stack which has matured very significantly over the past 25 years is the Semantic Web Stack. As I understand it, in the early days of the semantic web, things were pretty much designed to work one way, the way academics saw the world. But now, those designing business systems have been heard and there are alternative approaches that satisfy the needs of academics and of those designing business systems. There is one area of uncertainty. Will the semantic web stack use RDF, OWL, RIF, and SWRL which was created by academics; or will it use RDF, OWL, and SHACL which was created by more business systems designers.

There are many, many important fundamental details related to business logic and logic in general that one needs to get right when designing parts of a stack. For example, here are the Use Cases and Requirements of SHACL. UC16 discusses things like the "closed world assumption" and the "unique name assumption". These are critical things that make the eyes of most business professionals glaze over and what is becoming very obvious is that the average software developer is not familiar with these critically important issues.

Because of the lack of interest of business professionals and the lack of understanding of the average software developer, design mistakes creep into technical architectures that cause fundamental problems.

"In this paper we provided an in-depth discussion of the multi-stack architecture (MSA) for the Semantic Web and argued that a stack of rule-based languages, complete with default negation, should exist side-by-side with the ontology stack based on OWL."

What does all this mean for XBRL and the XBRL technical stack?

This is how I see it based on my 20 years of experience trying to figure out how to best employ XBRL for digital financial reporting.

First, XBRL clearly does not get to redefine business logic or logic in general. Logic in general and business logic in particular, such as the business logic of US GAAP which has been around and tuned for many years, simply cannot be changed by XBRL or any other technical syntax. Business logic is the common denominator between technical implementations. Each technical implemenation must us the same business logic. How they implement that business logic is up to them; but they cannot simply change or ignore business logic. To be clear, I am NOT saying that XBRL is changing business logic.

Second, all that "stuff" exists in the semantic web stack for a reason. If similar "stuff" does not exist in the XBRL stack then XBRL will have missing capabilities and users of the XBRL stack will be unfulfilled.

There are two critical issues or areas that XBRL falls short that I can see:

The clear definition of the business logic of a business report which is a fundamental layer of business logic. Evidence of this is the XBRL-based financial reports of public companies which are created and then submitted to the SEC. While the vast majority of information reported does follow the business logic that I would expect for a business report, a small minority of the information disclosed does not.

The ability of those representing business logic within a business report, such as a financial report, to clearly describe that business logic to themselves so that they can get their report consistent with that logic and to users of the report so that the user of the report can understand the meaning conveyed by the business information reported.

Important to understanding the above is an understanding of the fundamental strengths or capabilities of computers and the major obstacles that have to be overcome to leverage those strengths/capabilities. This explains WHY you need standards and WHAT you need those standards to do. These strengths and obstacles are summarized well by Andrew D. Spear in his document, Ontology for the Twenty First Century: An Introduction with Recommendations, page 4:

Fundamental strengths/capabilities of computers:

store tremendous amounts of information reliably and efficiently

retrieve tremendous amounts of information reliably and efficiently

process stored information reliably and efficiently, mechanically repeating the same process over and over

make information instantly accessible to individuals and more importantly other machine-based processes anywhere on the planet in real time

Major obstacles to harnessing the power of computers:

business professional idiosyncrasies; different business professionals use different terminologies to refer to exactly the same thing

information technology idiosyncrasies; information technology professionals use different technology options, techniques, and formats to encode information and store exactly the same information

inconsistent domain understanding of and technology's limitations in expressing interconnections

computers are dumb beasts; computers don't understand themselves, the programs they run, or the information that they work with

Information business professionals are trying to store and make use of is becoming more complex than what they have been storing in relational databases or spreadsheets for the past 50 years. A financial report is complex information.

Information is not just a long list of facts, but rather these facts are logically, mechanically, mathematically interconnected and generally used within sets which can be dynamic and used one way by one business professional and some other way by another business professional or by the same business professional at some different point in time. These relations are many times more detailed and complex than the typical computer database can handle. Business professionals sometimes do not understand that certain relations even exist.