com.ihr.xbrl.om.xdt

## Class XDTDimensionalPrimaryItemForGUIs

- java.lang.Object
- - com.ihr.xbrl.om.xdt.XDTDimensionalPrimaryItem
  - - com.ihr.xbrl.om.xdt.XDTDimensionalPrimaryItemForGUIs

-     public class XDTDimensionalPrimaryItemForGUIs
      extends XDTDimensionalPrimaryItem

  This class represents a "new view" over a dimensional primary item based on the interpretation of the authors of the formula linkbase and the assumptions made by the specification working group regarding the same dimension name cannot appear both in segment and scenario container. (a mistake from my personal point of view and a contradiction with the XBRL 2.1 specification... but...)

  This class also does not takes into consideration the primary item is linked with a set of dimensions and that the dimension values may interact one with the others causing invalid combinations if one member is used in one dimension and not used in other combination.

  validity of the combinations are available as this object is a superclass of the XDTDimensionalPrimaryItem.

  Author:
    Ignacio

- - ### Constructor Summary

    Constructors
    Constructor and Description
    `XDTDimensionalPrimaryItemForGUIs(XDTDimensionalPrimaryItem pri)` Creates an instance of this class.

  - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `XDTDimension` | `getDimension(javax.xml.namespace.QName dimension)` Returns the XDTDimension from the dimension QName or null if the dimension is not used on this primary item.
    `java.lang.Integer` | `getDimensionContainer(javax.xml.namespace.QName dimension)` Returns the preferred container for the selected dimension or null if the dimension is not explicitly indicated in any hypercube (OPEN hypercubes).
    `java.util.Collection<javax.xml.namespace.QName>` | `getDimensions()` Returns the list of dimensions for this primary item.
    `java.util.Collection<XDTDimensionUse>` | `getDimensionUses(javax.xml.namespace.QName dimension)` Returns a Collection of dimension uses (instances of XDTDimensionUse) that participate in the definition of this dimensional primary item. or null if there are no XDTDimensionUse found
    `java.util.Collection<javax.xml.namespace.QName>` | `getDomain(javax.xml.namespace.QName dimension)` Returns the list of values for a given dimension.
    `boolean` | `isRequiredDimension(javax.xml.namespace.QName dimension)` Returns a boolean value indicating if the dimension appears in all combinations and the context container for that dimension is closed.

    - ### Methods inherited from class com.ihr.xbrl.om.xdt.XDTDimensionalPrimaryItem

      `getDimensions, getPrimaryItem, getRolesForDimensions, getScenarioCombinations, getSegmentCombinations, isRequiredDimension, toString`

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

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

- - ### Constructor Detail

    - #### XDTDimensionalPrimaryItemForGUIs

          public XDTDimensionalPrimaryItemForGUIs(XDTDimensionalPrimaryItem pri)

      Creates an instance of this class. At this time all fact dimensions are explored and values collected for each dimension independently of the combination they appear.
      Parameters:
        `pri` - the parent class

  - ### Method Detail

    - #### getDimensions

          public java.util.Collection<javax.xml.namespace.QName> getDimensions()

      Returns the list of dimensions for this primary item.
      Returns:
        Collection<QName>

    - #### getDomain

          public java.util.Collection<javax.xml.namespace.QName> getDomain(javax.xml.namespace.QName dimension)

      Returns the list of values for a given dimension. If the dimension is not found the empty collection is returned
      Parameters:
        `dimension` - QName
      Returns:
        Collection<QName>

    - #### getDimensionContainer

          public java.lang.Integer getDimensionContainer(javax.xml.namespace.QName dimension)

      Returns the preferred container for the selected dimension or null if the dimension is not explicitly indicated in any hypercube (OPEN hypercubes).
      Parameters:
        `dimension` - the dimension
      Returns:
        the dimension container

    - #### isRequiredDimension

          public boolean isRequiredDimension(javax.xml.namespace.QName dimension)

      Returns a boolean value indicating if the dimension appears in all combinations and the context container for that dimension is closed. This method calls isRequiredDimension with the container for the dimension passed in as a parameter.
      Parameters:
        `dimension` - QName
      Returns:
        boolean value

    - #### getDimensionUses

          public java.util.Collection<XDTDimensionUse> getDimensionUses(javax.xml.namespace.QName dimension)

      Returns a Collection of dimension uses (instances of XDTDimensionUse) that participate in the definition of this dimensional primary item. or null if there are no XDTDimensionUse found
      Parameters:
        `dimension` - QName
      Returns:
        Collection<XDTDimensionUse>

    - #### getDimension

          public XDTDimension getDimension(javax.xml.namespace.QName dimension)

      Returns the XDTDimension from the dimension QName or null if the dimension is not used on this primary item.
      Parameters:
        `dimension` - QName
      Returns:
        XDTDimension