com.ihr.xbrl.om.table.definition

## Class DimensionTypedRule

- java.lang.Object
- - com.ihr.xbrl.om.table.definition.DimensionCommonAspectRule
  - - com.ihr.xbrl.om.table.definition.DimensionTypedRule

- All Implemented Interfaces:
    DimensionAspectInterface<XMLFragment>, TypedDimensionAspectInterface, Aspect<DimensionAndValuePair<XMLFragment>>

      public class DimensionTypedRule
      extends DimensionCommonAspectRule
      implements TypedDimensionAspectInterface

  The Class DimensionTypedRule.
  Author:
    Ignacio

- - ### Constructor Summary

    Constructors
    Constructor and Description
    `DimensionTypedRule(XBRLRuleNode ruleNode, net.sf.saxon.s9api.XdmNode aspectNode)` Instantiates a new dimension typed rule.

  - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `java.lang.Object` | `getAspectClashIdentity()` Returns an object that can be used to evaluate aspect clash.
    `int` | `getAspectType()` Returns a value from the CommonAspectRule class that identifies the aspect type.
    `net.sf.saxon.s9api.XdmNode` | `getMember(XBRLStructuralTable xbrlTable)` Returns the XdmNode member this DimensionTypedRule contributes.
    `DimensionAndFragmentMemberPair` | `getMember(XBRLStructuralTable table, CellHeader[] header)` Convert this aspect into a proper Member
    `int` | `getMembersCount()` Gets the members count.
    `void` | `resetNode()` Reset node.
    `java.lang.String` | `toString()`

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

      `getDimension`

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

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

    - ### Methods inherited from interface com.ihr.xbrl.om.table.definition.DimensionAspectInterface

      `getDimension`

- - ### Constructor Detail

    - #### DimensionTypedRule

          public DimensionTypedRule(XBRLRuleNode ruleNode,
                            net.sf.saxon.s9api.XdmNode aspectNode)
                             throws XTValidationException

      Instantiates a new dimension typed rule.
      Parameters:
        `ruleNode` - the rule node
        `aspectNode` - the aspect node
      Throws:
        `XTValidationException` - the XT validation exception

  - ### Method Detail

    - #### getAspectClashIdentity

          public java.lang.Object getAspectClashIdentity()

      Description copied from interface: `Aspect`
      Returns an object that can be used to evaluate aspect clash.
      Specified by:
        `getAspectClashIdentity` in interface `Aspect<DimensionAndValuePair<XMLFragment>>`
      Returns:
        the aspect clash identity

    - #### getAspectType

          public int getAspectType()

      Description copied from interface: `Aspect`
      Returns a value from the CommonAspectRule class that identifies the aspect type.
      Specified by:
        `getAspectType` in interface `Aspect<DimensionAndValuePair<XMLFragment>>`
      Returns:
        the aspect type

    - #### getMember

          public net.sf.saxon.s9api.XdmNode getMember(XBRLStructuralTable xbrlTable)
                                               throws XTValidationException

      Returns the XdmNode member this DimensionTypedRule contributes. If the XdmNode is static, the xbrlTable parameter is not used. If the node contains the member defined as an XPath expression, this method returns the defined member in the resource by evaluating the XPath expression. In this case, the xbrlTable may provide parameters for the evaluation of the XPath expression
      Specified by:
        `getMember` in interface `TypedDimensionAspectInterface`
      Parameters:
        `xbrlTable` - this is the table this expression is participating. This is used to obtain the table parameters
      Returns:
        XdmNode member
      Throws:
        `XTValidationException` - the XT validation exception

    - #### toString

          public java.lang.String toString()

      Overrides:
        `toString` in class `java.lang.Object`

    - #### getMembersCount

          public int getMembersCount()

      Description copied from interface: `DimensionAspectInterface`
      Gets the members count.
      Specified by:
        `getMembersCount` in interface `DimensionAspectInterface<XMLFragment>`
      Returns:
        the members count

    - #### resetNode

          public void resetNode()

      Description copied from interface: `DimensionAspectInterface`
      Reset node.
      Specified by:
        `resetNode` in interface `DimensionAspectInterface<XMLFragment>`

    - #### getMember

          public DimensionAndFragmentMemberPair getMember(XBRLStructuralTable table,
                                                 CellHeader[] header)
                                                   throws XTValidationException

      Description copied from interface: `Aspect`
      Convert this aspect into a proper Member depending on the aspect type. Member can be used later to search for facts that satisfy the set of members
      Specified by:
        `getMember` in interface `Aspect<DimensionAndValuePair<XMLFragment>>`
      Parameters:
        `table` - the table
        `header` - the header
      Returns:
        the member
      Throws:
        `XTValidationException` - the XT validation exception