# Implicit Filters 1.0

## Candidate Recommendation 28 March 2008

Copyright ©2008 XBRL International Inc., All Rights Reserved.

This version:
  <http://www.xbrl.org/Specification/implicitFilters/CR-2008-03-28/implicitFilters-CR-2008-03-28.html>
Editors:
  Phillip Engel, Morgan Stanley <phillip.engel@morganstanley.com>
  Herm Fischer, UBMatrix / Mark V Systems <fischer@markv.com>
  Victor Morilla, Banco de España <victor.morilla@bde.es>
  Jim Richards, JDR & Associates <jdrassoc@iinet.net.au>
  Geoff Shuetrim, Galexy <geoff@galexy.net>
  David vun Kannon, PricewaterhouseCoopers LLP <david.k.vunkannon@us.pwc.com>
  Hugh Wallis, XBRL International <hughwallis@xbrl.org>
Contributors:
  Cliff Binstock, Coyote Reporting <cliff.binstock@coyotereporting.com>
  Paul Bull, Morgan Stanley <paul.bull@morganstanley.com>
  Mark Goodhand, Decisionsoft <mrg@decisionsoft.com>
  Masatomo Goto, Fujitsu <mg@jp.fujitsu.com>
  Walter Hamscher, Standard Advantage / Consultant to PricewaterhouseCoopers LLP <walter@hamscher.com>
  Ignacio Hernández-Ros, Reporting Estandar S.L. <ignacio@hernandez-ros.com>
  Roland Hommes, Rhocon / Consultant to Netherlands Tax and Customs Administration <roland@rhocon.nl>
  Andy Harris, UBMatrix <andy.harris@ubmatrix.com>
  Pablo Navarro Salvador, Atos Origin sae <pablo.navarro@atosorigin.com>
  Michele Romanelli, Banca d'Italia <michele.romanelli@bancaditalia.it>
  Chris Simmons, DecisionSoft <cps@decisionsoft.com>
  Masaru Uchida, Fujitsu <m-uchida@jp.fujitsu.com>
  Hitoshi Okumura, Fujitsu <okmr@jp.fujitsu.com>
  Takahide Muramoto, Fujitsu <taka.muramoto@jp.fujitsu.com>

## Status

Circulation of this Candidate Recommendation is unrestricted. This document is normative. Other documents may supersede this document. Recipients are invited to submit comments to formula-feedback@xbrl.org, and to submit notification of any relevant patent rights of which they are aware and to provide supporting documentation.

## Abstract

This specification is an extension to the XBRL Variables Specification [VARIABLES]. This specification defines an approach for associating filters with fact variables.

# 1 Introduction

This specification is an extension to the XBRL Variables 1.0 Specification [VARIABLES]. It defines implicit filtering schemes for inferring associations between fact variables and filters.

Implicit associations between fact variables and filters are complementary to the variable-filter relationships defined in the XBRL Variables Specification [VARIABLES]. The implicit associations are determined by analysis of uncovered aspects, considering only those filters that are associated with variables by variable-filter relationships.

Implicit filters are intended to reduce the verbosity of fact variables by inferring match filters [MATCH FILTERS] for the uncovered aspects of fact variables in a variable set.

These inferred match filters serve to equate the values of uncovered aspects across fact variables. For any two fact variables in a variable set that do not have filters covering a specific aspect, those two fact variables will only ever evaluate to facts that report equivalent values for that aspect.

For any aspect that is uncovered for at least one fact variable in a variable set, The implicit value of that aspect is the the value that it takes for each fact variable in the variable set that does not have a filter covering that aspect.

It is possible for the implicit value of an aspect to be a missing value for that aspect. In other words, it is possible for an aspect not to be reported for all of the facts that all of the fact variables, not covering the aspect, have evaluated to.

Implicit filters are only associated with fact variables in variable sets that indicate that they are to be evaluated with implicit filtering.

This specification defines two different forms of implicit filtering, one that does not take the XBRL Dimensions Specification [DIMENSIONS] into account and one that does.

Which form of implicit filtering, if any, is used when evaluating a variable set depends on the aspect model of the variable set.

## 1.1 Background

This specification is a member of a suite of similar specifications that define specific types of criteria that can be used to select facts from XBRL instances. It simplifies the declaration of the filters needed to match the aspects of facts across fact variables that are evaluated as a group.

## 1.2 Relationship to other work

This specification depends upon the XBRL Specification [XBRL 2.1], the XBRL Variables Specification [VARIABLES]. In the event of any conflicts between this specification and the specifications upon which it depends, this specification does not prevail.

## 1.3 Language independence

The official language of XBRL International's own work products is English and the preferred spelling convention is UK English.

## 1.4 Terminology

This specification is consistent with the definitions of any of the terms defined in specifications that it depends on.

## 1.5 Document conventions (non-normative)

Documentation conventions follow those set out in the XBRL Variables Specification [VARIABLES].

## 1.6 Namespaces and namespace prefixes

Namespace prefixes [XML NAMES] will be used for elements and attributes in the form `ns:name` where `ns` is the namespace prefix and `name` is the local name. Throughout this specification, the mappings from namespace prefixes to actual namespaces is consistent with Table 1.

The prefix column in Table 1 is non normative. The namespace URI column is normative.

Table 1: Namespaces and namespace prefixes

Prefix | Namespace URI
--- | ---
`xbrlife` | `http://xbrl.org/2008/filter/implicit/error`
`eg` | `http://example.com/`
`fn` | `http://www.w3.org/2005/xpath-functions`
`link` | `http://www.xbrl.org/2003/linkbase`
`xbrli` | `http://www.xbrl.org/2003/instance`
`xfi` | `http://www.xbrl.org/2005/function/instance`
`xbrldi` | `http://xbrl.org/2006/xbrldi`
`xbrldt` | `http://xbrl.org/2005/xbrldt`
`xl` | `http://www.xbrl.org/2003/XLink`
`xlink` | `http://www.w3.org/1999/xlink`
`xs` | `http://www.w3.org/2001/XMLSchema`
`xsi` | `http://www.w3.org/2001/XMLSchema-instance`
`generic` | `http://xbrl.org/2008/generic`
`variable` | `http://xbrl.org/2008/variable`
`iso4217` | `http://www.xbrl.org/2003/iso4217`

## 1.7 XPath usage

XPath usage is identical to that in the XBRL Variables Specification [VARIABLES].

# 2 Implicit filters

An implicit filter is a filter that has been inferred to be associated with a fact variable in a variable set rather than explicitly associated with the fact variable by an XLink arc.

Implicit filters do not cover any aspect.

When evaluating variable sets using implicit filtering, the implicit filters to infer are determined during the evaluation process. The current variable is the fact variable that is currently being evaluated. Implicit filters are inferred for the current variable according to the rules set out in this section.

A preceding variable for the current variable is a fact variable in the same variable set as the current variable that has already been evaluated to a sequence of one or more facts.

The aspect universe is the set of all aspects for which values are reported (explicitly or by default) in the target XBRL instance.

A matchable aspect is an aspect in the aspect universe that is not covered for the current variable and that is not covered for at least one of the current variable's preceding variables.

A match filter is inferred for each of its matchable aspects of the current variable.

The match filter that is inferred for each matchable aspect, must be the match filter that selects for facts by matching the value of the matchable aspect.

Example 1: Determination of the match filter to be inferred

The implicit filter for an uncovered concept aspect would be a concept matching filter.

Similarly, the implicit filter for an uncovered period aspect would be a period matching filter.

The matched variable for each inferred match filter is any one of the preceding variables that did not have a filter that covered the aspect being matched by the inferred match filter.

This specification defines two different variations of implicit filters, one to handle implicit filtering when processing formulae and instances that are based on the XBRL Dimensions Specification [DIMENSIONS] (see Section 2.1), and one that is appropriate when processing formulae and instances that are only based on the XBRL Specification [XBRL 2.1] (see Section 2.2).

The only distinction between non-dimensional implicit filters and dimensional implicit filters is in terms of the aspects that they identify from the existence and content of segments and scenarios.

## 2.1 Non-dimensional implicit filters

Non-dimensional implicit filters are implicit filters that do not take the XBRL Dimensions Specification [DIMENSIONS] into account when determining the filters to be applied to the content of segments and scenarios.

Non-dimensional implicit filters are used for variable sets requiring implicit filtering and using the non-dimensional aspect model.

The following table sets out the aspects that are defined with regard to dimensional implicit filtering and the match filters that are used for those aspects:

Table 2: Aspects defined for non-dimensional implicit filtering

Aspect | Match filter
--- | ---
the concept aspect | the concept matching filter
the location aspect | the location matching filter
the entity-identifier aspect | the entity-identifier matching filter
the period aspect | the period matching filter
the complete segment aspect | the complete segment matching filter
the complete scenario aspect | the complete scenario matching filter
the unit aspect | the unit matching filter

Example 2 shows the small number of non-implicit filters required to define variables that would support computation of equity from data on assets and liabilities. Only the covering concept-name filters need to be explicit. All others are implicit.

Example 2: Implicit filtering with a non-dimensional aspect model to support equity calculation formulae.

Variables in the variable set
Variable | Filters
--- | ---
`eg:assets` | covering concept-name filter requiring matching facts to report values for the `eg:assets` concept.
`eg:liabilities` | covering concept-name filter requiring matching facts to report values for the `eg:liabilities` concept.

## 2.2 Dimensional implicit filters

dimensional implicit filters are implicit filters that do take the XBRL Dimensions Specification [DIMENSIONS] into account when determining the filters to be applied to the content of segments and scenarios.

Dimensional implicit filters are used for variable sets requiring implicit filtering and using the dimensional aspect model.

The following table sets out the aspects that are defined with regard to dimensional implicit filtering and the match filters that are used for those aspects:

Table 3: Aspects defined for dimensional implicit filtering

Aspect | Match filter
--- | ---
the concept aspect | the concept matching filter
the location aspect | the location matching filter
the entity-identifier aspect | the entity-identifier matching filter
the period aspect | the period matching filter
a segment dimension aspect for each segment dimension | the segment dimension matching filter for the segment dimension
the non-XDT segment aspect | the non-XDT segment matching filter
a scenario dimension aspect for each scenario dimension | the scenario dimension matching filter for the scenario dimension
the non-XDT scenario aspect | the non-XDT scenario matching filter
the unit aspect | the unit matching filter

Example 3 shows the small number of non-implicit filters required to define variables that would support stock flow computations. Only the covering concept-name, instant-duration and typed dimension filters are explicit. All others are implicit.

Example 3: Implicit filtering with a dimensional aspect model to support calculation of end-of-period stocks.

Variables in the variable set
Variable | Filters
--- | ---
`eg:flow` | covering concept-name filter requiring matching facts to report values for the `eg:flow` concept.
`eg:startingStock` | covering concept-name filter requiring matching facts to report values for the `eg:stock` concept. covering instant-duration filter requiring matching facts to report values with an instant equal to the start of the duration of the fact matched by the `eg:flow` variable. covering typed dimension filter requiring matching facts to report values with a restatement date that is equal to the end date of the fact matched by the `eg:flow` variable.

# Appendix A References

CONCEPT FILTERS
  XBRL International Inc.. "XBRL Concept Filters 1.0, Public Working Draft"
  Phillip Engel, Herm Fischer, Victor Morilla, Jim Richards, Geoff Shuetrim, David vun Kannon, and Hugh Wallis.
  (See ../../conceptFilters/CR-2008-03-28/conceptFilters-CR-2008-03-28.html)
DIMENSION FILTERS
  XBRL International Inc.. "XBRL Dimension Filters 1.0, Public Working Draft"
  Phillip Engel, Herm Fischer, Victor Morilla, Jim Richards, Geoff Shuetrim, David vun Kannon, and Hugh Wallis.
  (See ../../dimensionFilters/CR-2008-03-28/dimensionFilters-CR-2008-03-28.html)
DIMENSIONS
  XBRL International Inc.. "XBRL Dimensions 1.0"
  Ignacio Hernández-Ros, and Hugh Wallis.
  (See http://www.xbrl.org/Specification/XDT-REC-2006-09-18.htm)
MATCH FILTERS
  XBRL International Inc.. "XBRL Match Filters 1.0, Public Working Draft"
  Phillip Engel, Herm Fischer, Victor Morilla, Jim Richards, Geoff Shuetrim, David vun Kannon, and Hugh Wallis.
  (See ../../matchFilters/CR-2008-03-28/matchFilters-CR-2008-03-28.html)
PERIOD FILTERS
  XBRL International Inc.. "XBRL Period Filters 1.0, Public Working Draft"
  Phillip Engel, Herm Fischer, Victor Morilla, Jim Richards, Geoff Shuetrim, David vun Kannon, and Hugh Wallis.
  (See ../../periodFilters/CR-2008-03-28/periodFilters-CR-2008-03-28.html)
VARIABLES
  XBRL International Inc.. "XBRL Variables 1.0, Public Working Draft"
  Phillip Engel, Herm Fischer, Victor Morilla, Jim Richards, Geoff Shuetrim, David vun Kannon, and Hugh Wallis.
  (See ../../variables/CR-2008-03-28/variables-CR-2008-03-28.html)
XBRL 2.1
  XBRL International Inc.. "Extensible Business Reporting Language (XBRL) 2.1"
  Phillip Engel, Walter Hamscher, Geoff Shuetrim, David vun Kannon, and Hugh Wallis.
  (See http://www.xbrl.org/Specification/XBRL-RECOMMENDATION-2003-12-31+Corrected-Errata-2006-12-18.htm)
XML NAMES
  W3C (World Wide Web Consortium). "Namespaces in XML 1.0 (Second Edition)"
  Tim Bray, Dave Hollander, Andrew Layman, and Richard Tobin.
  (See http://www.w3.org/TR/REC-xml-names/)

# Appendix B Intellectual property status (non-normative)

This document and translations of it may be copied and furnished to others, and derivative works that comment on or otherwise explain it or assist in its implementation may be prepared, copied, published and distributed, in whole or in part, without restriction of any kind, provided that the above copyright notice and this paragraph are included on all such copies and derivative works. However, this document itself may not be modified in any way, such as by removing the copyright notice or references to XBRL International or XBRL organizations, except as required to translate it into languages other than English. Members of XBRL International agree to grant certain licenses under the XBRL International Intellectual Property Policy (www.xbrl.org/legal).

This document and the information contained herein is provided on an "AS IS" basis and XBRL INTERNATIONAL DISCLAIMS ALL WARRANTIES, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF THE INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.

The attention of users of this document is directed to the possibility that compliance with or adoption of XBRL International specifications may require use of an invention covered by patent rights. XBRL International shall not be responsible for identifying patents for which a license may be required by any XBRL International specification, or for conducting legal inquiries into the legal validity or scope of those patents that are brought to its attention. XBRL International specifications are prospective and advisory only. Prospective users are responsible for protecting themselves against liability for infringement of patents. XBRL International takes no position regarding the validity or scope of any intellectual property or other rights that might be claimed to pertain to the implementation or use of the technology described in this document or the extent to which any license under such rights might or might not be available; neither does it represent that it has made any effort to identify any such rights. Members of XBRL International agree to grant certain licenses under the XBRL International Intellectual Property Policy (www.xbrl.org/legal).

# Appendix C Acknowledgements (non-normative)

This document could not have been written without the contributions of many people including the participants in the Formula Working Group.

# Appendix D Document history (non-normative)

Date | Author | Details
--- | --- | ---
15 November 2007 | Geoff Shuetrim | First internal working draft started, drawing upon the ideas put forward by Victor Morilla and Paul Bull.
19 November 2007 | Geoff Shuetrim | Completed the first draft of the implicit filter specification.
25 November 2007 | Victor Morilla | Included comments and proposed changes about the matched variable
29 November 2007 | Geoff Shuetrim | Fixed up the rules for inferring matching filters to ensure that we cover tricky situations involving facts reported with differing sets of aspects (such as could occur if we have concepts in the DTS that are associated with more than one conjunction of hypercubes).
01 December 2007 | Geoff Shuetrim | Added examples.
13 March 2008 | Geoff Shuetrim | Made the introduction more easily read by breaking up the larger paragraphs. Added explanatory paragraph for each of the examples. These changes were suggested by CompSci Resources.
20 March 2008 | Geoff Shuetrim | Fixed broken hyperlinks.

# Appendix E Errata corrections in this document

This appendix contains a list of the errata that have been incorporated into this document. This represents all those errata corrections that have been approved by the XBRL International Formula Working Group up to and including 28 March 2008. Hyperlinks to relevant e-mail threads may only be followed by those who have access to the relevant mailing lists. Access to internal XBRL mailing lists is restricted to members of XBRL International Inc.

No errata have been incorporated into this document.