New Perspectives on Patterns
Friday, November 21, 2008 at 06:20AM
Charlie in XBRL General Information

Something occurred to me the other day which provides an interesting way to look at the notion of "patterns" in taxonomies.

There seems to be only two possibilities as to whether you use the notion of patterns to create a taxonomy:

So whether the creators of taxonomies use patterns or not is really not important.  I would contend that all creators of taxonomies use some sort of patterns to construct the concepts and relationships within the taxonomy.  It is simply not the case that taxonomies are random.

As such, one could say that "patterns" exist within a taxonomy.

Now, taxonomy creators can choose to do one of two things when they create taxonomies.  They can document those patterns or they don't document those patterns.  If the creators of taxonomies are not even conscious of following patterns, they are unlikely to document those patterns.

There is another choice taxonomy creators can make.  If they document those patterns, then they can make the documentation available to the users of the taxonomy or they don't make that documentation available.

So, the full spectrum of possibilities when creating a taxonomy appears to be something like this:

Why is this important you might ask?  Well, consider the following questions.

None of these questions have anything to do with any specific set of patterns used to model a taxonomy.  These are all general statements which apply to any taxonomy really.

Something worth mentioning is the notion of a "generated approach" to creating a taxonomy.  What this means is generating the actual taxonomy using software.  Many times taxonomies are created by having people adding concepts and relations into a taxonomy via the use of a taxonomy creation tool.  But another approach is to collect information in some other form and then generate the taxonomy itself from that information.  That is done, you guessed it, to follow patterns consistently.

Finally, suppose that you want to leverage someone Else's patterns when creating your taxonomy.  For example, what if you like the XBRL Simplified Application Profile or the XBRL Application Profile for OLAP and rather than invent your own approach to creating consistency within your taxonomy, you just wanted to borrow someone Else's approach.  It would help if there were documentation for how to construct these patterns, tests which could be run against a taxonomy to see if it complied to those rules, a way that those extending the taxonomy could test to be sure they are also following the patterns of the base taxonomy.

Conclusion

If you are building a taxonomy yourself or managing a taxonomy project you may want to ask yourself:

  1. Am I following some sort of patterns when creating my taxonomy to make sure the taxonomy is internally consistent?
  2. How am I proving to myself that the taxonomy is, in fact, internally consistent (i.e. doing the same things in the same way throughout the taxonomy)
  3. Am I having to rely on humans to check for this consistency, or do I have automated tests I can run against the taxonomy to be sure it is consistent?
  4. What am I doing to ensure that those extending the taxonomy will also follow the patterns which I am using within their extensions.
  5. Is there an existing set of patterns, documentation, and tests which I can simply leverage rather than reinvent and how appropriate is that set for my system?
Article originally appeared on XBRL-based structured digital financial reporting (http://xbrl.squarespace.com/).
See website for complete article licensing information.