com.ihr.xbrl.om.formula.filters
Interface XBRLDelayedCompilationFilter

All Superinterfaces:
XBRLFormulaFilter
All Known Implementing Classes:
XBRLAncestorFilter, XBRLAndFilter, XBRLAspectCoverFilter, XBRLConceptBalanceFilter, XBRLConceptCustomAttributeFilter, XBRLConceptDataTypeFilter, XBRLConceptFilterAbstract, XBRLConceptNameFilter, XBRLConceptPeriodTypeFilter, XBRLConceptSubstitutionGroupFilter, XBRLDimensionFilterAbstract, XBRLExplicitDimensionFilter, XBRLFormulaFilterBase, XBRLGeneralFilter, XBRLGeneralMeasuresFilter, XBRLIdentifierFilter, XBRLLocationFilter, XBRLMatchAbstractFilter, XBRLMatchConceptFilter, XBRLMatchDimensionFilter, XBRLMatchEntityIdentifierFilter, XBRLMatchLocationFilter, XBRLMatchNonXDTScenarioFilter, XBRLMatchNonXDTSegmentFilter, XBRLMatchPeriodFilter, XBRLMatchScenarioFilter, XBRLMatchSegmentFilter, XBRLMatchUnitFilter, XBRLOrFilter, XBRLParentFilter, XBRLPeriodEndFilter, XBRLPeriodFilter, XBRLPeriodFilterAbstract, XBRLPeriodForeverFilter, XBRLPeriodInstantDurationFilter, XBRLPeriodInstantFilter, XBRLPeriodStartFilter, XBRLRegExpIdentifierFilter, XBRLRegExpSchemeFilter, XBRLRelativeFilter, XBRLScenarioFilter, XBRLSegmentFilter, XBRLSiblingFilter, XBRLSingleMeasureFilter, XBRLSpecificIdentifierFilter, XBRLSpecificSchemeFilter, XBRLTypedDimensionFilter, XBRLValueNilFilter, XBRLValuePrecisionFilter

public interface XBRLDelayedCompilationFilter
extends XBRLFormulaFilter

When a filter depends on another filter that is not already compiled (typically this is an OR filter that depends on an AND filter) and nested structures between them. Filters are compiled in a loop.

Those filters must implement this interface that controls when the loop ends.

Author:
Ignacio

Method Summary
 boolean compileFilter()
          This is the method that will be called by the Formula Processor in order to compile the filter XPath expression.
 boolean isCompiled()
          There may be nested dependencies between 'and' and 'or' filters.
 
Methods inherited from interface com.ihr.xbrl.om.formula.filters.XBRLFormulaFilter
collectVariables, getCorevedAspect, getFilterWeight, getLabel, getXPathTerm
 

Method Detail

compileFilter

boolean compileFilter()
                      throws XFValidationException
This is the method that will be called by the Formula Processor in order to compile the filter XPath expression.

Returns:
true if the filter has been successfully compiled. False if the filter requires further compilation.
Throws:
XFValidationException

isCompiled

boolean isCompiled()
There may be nested dependencies between 'and' and 'or' filters. so resources may not be available in the form of a filter during the filter compilation time.

If this happens (resources not available) then this flag is marked as true (resource not compiled) and the XPath expression is not generated.

During compilation phase of 'and' and 'or' a loop is created until all filters are compiled.

Returns:
true if the filter XPath expression has been generated completely


Copyright 2006-2009 Reporting Standard S.L., C/ Torrecilla del Puerto 1, 28043, Madrid, Espaņa