com.ihr.xbrl.om.table

## Class XBRLTable

- java.lang.Object
- - com.ihr.xbrl.om.XMLFragment
  - - com.ihr.xbrl.om.exLinks.XLinkElement
    - - com.ihr.xbrl.om.exLinks.XBRLPointerOfARelationship
      - - com.ihr.xbrl.om.exLinks.XBRLResource
        - - com.ihr.xbrl.om.table.XBRLTableResource
          - - com.ihr.xbrl.om.table.XBRLTable

- All Implemented Interfaces:
    XBRLRelationshipPoint, HasParentChildAttribute, HasTableProcessor, Thinable, XBRLValidation, XBRLValueKey, XMLHasParent, java.lang.Cloneable, javax.xml.namespace.NamespaceContext

      public class XBRLTable
      extends XBRLTableResource
      implements HasParentChildAttribute

  This is a table in the definition model.
  Author:
    Ignacio

- - ### Nested Class Summary

    - ### Nested classes/interfaces inherited from interface com.ihr.xbrl.om.table.HasParentChildAttribute

      `HasParentChildAttribute.ParentChildEnum`

    - ### Nested classes/interfaces inherited from interface com.ihr.xbrl.om.XBRLValidation

      `XBRLValidation.Direction`

  - ### Field Summary

    Fields
    Modifier and Type | Field and Description
    --- | ---
    `static javax.xml.namespace.QName` | `aspectModel` The Constant aspectModel.

    - ### Fields inherited from class com.ihr.xbrl.om.exLinks.XBRLResource

      `log, nullResource`

    - ### Fields inherited from class com.ihr.xbrl.om.exLinks.XLinkElement

      `actuate, ACTUATE, ARC, arcrole, ARCROLE, ETITLE, EXTENDED, from, FROM, href, HREF, label, LABEL, LOCATOR, RESOURCE, role, ROLE, show, SHOW, SIMPLE, title, TITLE, to, TO, TYPE`

    - ### Fields inherited from class com.ihr.xbrl.om.XMLFragment

      `CONCEPT_LABEL, CONCEPT_QNAME, EMPTYRELATIONSHIPSITERATORINSTANCE, EMPTYXMLFRAGMENTITERATORINSTANCE, FACT_CONCEPT_DATATYPE, FACT_CONCEPT_LABEL, FACT_QNAME, idQName, NO_POSITION, OrderComparator, PERIOD_TYPE, PERIOD_VALUE, SHORT_TEXT, SOURCE_DOCUMENT, XPATH, XPOINTER`

    - ### Fields inherited from interface com.ihr.xbrl.om.table.HasParentChildAttribute

      `parentChilOrder`

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `XBRLTable(XBRLTableProcessor xbrlTableProcessor, XBRLResource res)` Creates a new table in the definition model.

  - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `int` | `getAspectModel()` Returns either XBRLVariablesHolder.MODEL_DIMENSIONAL or XBRLVariablesHolder.MODEL_NON_DIMENSIONAL
    `java.util.Iterator<XBRLBreakdownUse>` | `getBreakdowns()` Gets the breakdowns.
    `java.util.Iterator<XBRLFilterUse>` | `getFilters()` Gets the filters.
    `HasParentChildAttribute.ParentChildEnum` | `getParentChildOrder()` Returns the value of the parentChildOrder attribute as one value of the ParentChildEnum enumeration.
    `java.util.Iterator<XBRLStructuralTable>` | `getStructuralTables()` Returns an iterator over all structural tables defined from this table definition.
    `boolean` | `isParentChildOrderDefined()` Returns true when the resource contains an attribute with explicit definition of the parentChildOrder.

    - ### Methods inherited from class com.ihr.xbrl.om.table.XBRLTableResource

      `getFPXPathCompiler, getProcessor, isSpecificationVersion`

    - ### Methods inherited from class com.ihr.xbrl.om.exLinks.XBRLResource

      `addChild, clear, equals, generateLocatorToNode, generateNode, getAttributes, getDTSBase, getFriendlyName, getFriendlyName, getParent, getResourceIdentifier, getRoleType, getType, getValidationReport, getValueKey, hashCode, invalidate, invalidate, isComplexType, isOnValidation, isSimpleType, setComplexType, setDTSBase, setId, setParent, setRole, setRoleType, setSimpleType, setValue, validate`

    - ### Methods inherited from class com.ihr.xbrl.om.exLinks.XLinkElement

      `getActuate, getArcrole, getFromTxt, getHRef, getLabel, getRole, getShow, getStaticLabel, getSType, getTitle, getToTxt, isRequiredAttribute, isValidAttribute, setActuate, setArcrole, setFrom, setHRef, setLabel, setShow, setSType, setTitle, setTo`

    - ### Methods inherited from class com.ihr.xbrl.om.XMLFragment

      `addAttribute, addFromRelationship, addNamespace, addNamespace, addToRelationship, addXMLChild, changeBase, checkBase, clone, clone, delAttribute, delAttribute, equalXdmValues, evaluateBoolean, evaluateList, evaluateNode, evaluateNumber, evaluateString, generateId, generateNodeNamespacesAndAttributes, generateNodeValue, generatePrefix, getAllAttributes, getAttribute, getAttributeQNameValue, getAttributes, getAttributeStringValue, getAttributeValue, getBase, getBase, getBaseURI, getBooleanValue, getChild, getContainer, getContainerDocumentURI, getDeclaredNamespaces, getDocument, getElements, getElementsHashCode, getFragment, getFromRelationships, getFromRelationships, getFromRelationships, getFromRelationships, getId, getLang, getNamespaceURI, getNodeName, getNumberOfAttributes, getNumberOfElements, getNumberOfFromRelationships, getNumberOfToRelationships, getOrGenerateId, getPrefix, getPrefixes, getQNameValue, getRelationshipsBases, getRelationshipsChain, getRelationshipTypes, getStaticContext, getStaticNamespace, getStringValue, getToRelationships, getToRelationships, getToRelationships, getToRelationships, getValue, getXPathExecutable, getXPathNamespaceContext, getXPathToNode, getXPathToRoot, getXPointerElementScheme, getXPointerElementScheme, getXPointerShorthandScheme, getXPointerToNode, isDead, isNamespaceDefined, objEquals, objHashCode, qNameToString, removeAttribute, removeChild, removeChild, removeFromRelationship, removeToRelationship, removeXMLChild, resetElements, resetHash, resolveHRef, resolveHRef, s_equal2, s_equal2, s_equal2, setAttributes, setBase, setDocument, setDocumentAndReload, setElements, setLang, setNamespaceContext, setNamespaces, setNode, setNodeName, setParent, setValue, setVariablesDefined, thin, toString, valueEquals, xEqual`

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

      `getClass, notify, notifyAll, wait, wait, wait`

    - ### Methods inherited from interface com.ihr.xbrl.om.exLinks.XBRLRelationshipPoint

      `addFromRelationship, addToRelationship, getFromRelationships, getToRelationships, removeFromRelationship, removeToRelationship`

- - ### Field Detail

    - #### aspectModel

          public static final javax.xml.namespace.QName aspectModel

      The Constant aspectModel.

  - ### Constructor Detail

    - #### XBRLTable

          public XBRLTable(XBRLTableProcessor xbrlTableProcessor,
                   XBRLResource res)
                    throws XTxbrlteUnknownAspectModel

      Creates a new table in the definition model.
      Parameters:
        `xbrlTableProcessor` - the xbrl table processor
        `res` - the res
      Throws:
        `XTxbrlteUnknownAspectModel` - the x txbrlte unknown aspect model

  - ### Method Detail

    - #### getStructuralTables

          public java.util.Iterator<XBRLStructuralTable> getStructuralTables()

      Returns an iterator over all structural tables defined from this table definition. At this point this method just creates one XBRLStructuralTable because the PWD-2013-05-17 contains no table parameters but at a later time, while implementing the REC, this method shall return a true iterator over a set of structural models This method is not stable and may be removed later. The point is that it may be more efficient to build the structural model only for the already know and selected table parameter values. At this point in the development (PWD-2013-05-17) we don't know how to evaluate all possible structural models and it looks like there is a 1 to 1 relationship between a Definition model and Structural model. This is the reason this method returns just one XBRLStructural model. But for sure this is not what is stated in the REC version.
      Returns:
        Iterator

    - #### getAspectModel

          public int getAspectModel()

      Returns either XBRLVariablesHolder.MODEL_DIMENSIONAL or XBRLVariablesHolder.MODEL_NON_DIMENSIONAL
      Returns:
        one of the two constants

    - #### isParentChildOrderDefined

          public boolean isParentChildOrderDefined()

      Description copied from interface: `HasParentChildAttribute`
      Returns true when the resource contains an attribute with explicit definition of the parentChildOrder.
      Specified by:
        `isParentChildOrderDefined` in interface `HasParentChildAttribute`
      Returns:
        true when getParentChildOrder() will not return UNDEFINED

    - #### getParentChildOrder

          public HasParentChildAttribute.ParentChildEnum getParentChildOrder()

      Description copied from interface: `HasParentChildAttribute`
      Returns the value of the parentChildOrder attribute as one value of the ParentChildEnum enumeration.
      Specified by:
        `getParentChildOrder` in interface `HasParentChildAttribute`
      Returns:
        one of the values in the ParentChildEnum enumeration

    - #### getBreakdowns

          public java.util.Iterator<XBRLBreakdownUse> getBreakdowns()

      Gets the breakdowns.
      Returns:
        the vBreakdowns

    - #### getFilters

          public java.util.Iterator<XBRLFilterUse> getFilters()

      Gets the filters.
      Returns:
        the vFilters