An analysis of SEC XBRL financial filings contributed to identifying a set of seven minimum criteria which are necessary to make use of information reported in those filings. The notion of controlled flexibility was explained. Trying to connect that information with things that I am noticing in terms of report element misuse and inappropriate extension report elements from being created is my next step. I have identified the following five things which could mitigate misuse and inappropriate extension:
- Identify domain base classes, assign each taxonomy element to a base class: Categorize every report element into one business domain base category or class. The fundamental accounting concepts which I have created are a subset of the complete set of base classes. For example, a report element cannot be "assets" and be used as "equity". That makes no sense.
- Prohibit using report element defined in one base class as if it were some other class: Every report element must only be used to express something which relates to the intended base class. Said another way, report elements defined to be in one base class can never be used is if it were of some other class. Again, the concept "assets" cannot be used to express something which is "equity".
- Filer must identify base class of all extensions created: When a filer creates some extension report element, that report element must be associated with some base class or with some existing report element of the base taxonomy (which has been associated with some base class).
- Identify, articulate, and enforce computation relations between base classes: Unchangable computation relations exist between some base categories. Domain level business rules should enforce these computation relations. Again, the relations between the fundamental accounting concepts are an example of this. For example, why would it ever be the case that assets does not equal current assets plus noncurrent assets? (This is not about whether a filer actually reports noncurrent assets or if a filer uses an unclassified balance sheet, these are different situations which are handled by different rules.)
- Identify, articulate, and enforce allowed extension points: Some areas of an XBRL taxonomy are extensible. Other areas are not extensible. Where a taxonomy can and cannot be extended is up to the system which makes use of the taxonomy. This information must be clearly communicated.
So that is my first cut at trying to explain this. Most assuredly this needs more refinement, testing, and some examples to more crisply explain. It is trivial to include this information within an XBRL taxonomy using the power of XBRL definition relations to express this information.
I am not saying that my five points are suffecient to solve the problems of report element misuse or inappropriate extension. However, seems to me that they are necessary constraints in order to have quality reported information for use by analysts.
Any thoughts you might have would be greatly appreciated.