com.ihr.xbrl.om.formula.filters

## Class XBRLExplicitDimensionMultiFilter

- java.lang.Object
- - com.ihr.xbrl.om.formula.filters.XBRLExplicitDimensionMultiFilter

- All Implemented Interfaces:
    XBRLFormulaFilter

      public class XBRLExplicitDimensionMultiFilter
      extends java.lang.Object
      implements XBRLFormulaFilter

  The Class XBRLExplicitDimensionMultiFilter.
  Author:
    Ignacio

- - ### Constructor Summary

    Constructors
    Constructor and Description
    `XBRLExplicitDimensionMultiFilter(java.util.Vector<XBRLFilterUse> packFilters)` Instantiates a new XBRL explicit dimension multi filter.

  - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `void` | `collectVariables(java.util.Collection<javax.xml.namespace.QName> col, java.util.Collection<net.sf.saxon.s9api.QName> resolved)` This method is called after the filter has been compiled.
    `int` | `getFilterWeight()` Returns a number assigned statically to every filter type in order to facilitate evaluate the right order in which filters should be concatenated in an XPath expression or Boolean Filter.
    `java.lang.String` | `getLabel()` Implemented in the XBRLResource.
    `int` | `getRelatedAspect(boolean bIsCover)` Returns a constant value indicating the aspect covered by this filter Constants are defined in the CommonAspectRule class.
    `java.lang.String` | `getXPathTerm(java.util.Collection<net.sf.saxon.s9api.QName> preDefinedVariables)` Access to the XPath expression for this filter according to the formula specification.

    - ### Methods inherited from class java.lang.Object

      `equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Constructor Detail

    - #### XBRLExplicitDimensionMultiFilter

          public XBRLExplicitDimensionMultiFilter(java.util.Vector<XBRLFilterUse> packFilters)

      Instantiates a new XBRL explicit dimension multi filter.
      Parameters:
        `packFilters` - the pack filters

  - ### Method Detail

    - #### getXPathTerm

          public java.lang.String getXPathTerm(java.util.Collection<net.sf.saxon.s9api.QName> preDefinedVariables)
                                        throws XFValidationException

      Description copied from interface: `XBRLFormulaFilter`
      Access to the XPath expression for this filter according to the formula specification.
      Specified by:
        `getXPathTerm` in interface `XBRLFormulaFilter`
      Parameters:
        `preDefinedVariables` - set of pre defined variables in the variable set
      Returns:
        The XPath expression for this filter
      Throws:
        `XFValidationException` - if the variable filter XPath expression cannot be compiled for any reason

    - #### getRelatedAspect

          public int getRelatedAspect(boolean bIsCover)

      Description copied from interface: `XBRLFormulaFilter`
      Returns a constant value indicating the aspect covered by this filter Constants are defined in the CommonAspectRule class.
      Specified by:
        `getRelatedAspect` in interface `XBRLFormulaFilter`
      Parameters:
        `bIsCover` - boolean value indicating the value of the cover attribute on the arc connecting the variable with the filter
      Returns:
        integer constant

    - #### collectVariables

          public void collectVariables(java.util.Collection<javax.xml.namespace.QName> col,
                              java.util.Collection<net.sf.saxon.s9api.QName> resolved)

      Description copied from interface: `XBRLFormulaFilter`
      This method is called after the filter has been compiled. The method must add to the parameter all variables required for the evaluation of the XPath sentence that will be returned by the getXPathTerm() method
      Specified by:
        `collectVariables` in interface `XBRLFormulaFilter`
      Parameters:
        `col` - the collection where variables will be appended
        `resolved` - the resolved

    - #### getFilterWeight

          public int getFilterWeight()

      Description copied from interface: `XBRLFormulaFilter`
      Returns a number assigned statically to every filter type in order to facilitate evaluate the right order in which filters should be concatenated in an XPath expression or Boolean Filter. The number is assigned in a table inside the XBRLFilterOrderTool class.

      A typical implementation should just do:

           XBRLFilterOrderTool.getFilterWeight(getClass());

      and make sure the class is defined in the XBRLFilterOrderTool
      Specified by:
        `getFilterWeight` in interface `XBRLFormulaFilter`
      Returns:
        integer for comparison of filter order

    - #### getLabel

          public java.lang.String getLabel()

      Description copied from interface: `XBRLFormulaFilter`
      Implemented in the XBRLResource. Allows for finer logging
      Specified by:
        `getLabel` in interface `XBRLFormulaFilter`
      Returns:
        String