## Uses of Class
com.ihr.xbrl.om.table.structural.XBRLStructuralNode

- Packages that use XBRLStructuralNode
  Package | Description
  --- | ---
  com.ihr.xbrl.om.table.definition | Classes supporting definition nodes
  com.ihr.xbrl.om.table.layout | The layout model represents the content of the table according with section 7 of the specification
  com.ihr.xbrl.om.table.structural | This package contains classes related with the table structural model.

- - ### Uses of XBRLStructuralNode in com.ihr.xbrl.om.table.definition

    Methods in com.ihr.xbrl.om.table.definition that return XBRLStructuralNode
    Modifier and Type | Method and Description
    --- | ---
    `abstract XBRLStructuralNode[]` | XBRLRelationshipNode.`readDefinitionNodeSubTree(XBRLDefinitionNodeUse dnu, XBRLStructuralTable xbrlTable, java.util.Hashtable<java.lang.String,java.util.Hashtable<java.lang.Object,AspectAndDistanceToLeaf>> mergeAspects, java.lang.String mergeTagSelectors, HasParentChildAttribute.ParentChildEnum parentChild)` This method is called while building the structural table instance.
    `XBRLStructuralNode[]` | XBRLDimensionRelationshipNode.`readDefinitionNodeSubTree(XBRLDefinitionNodeUse dnu, XBRLStructuralTable xbrlTable, java.util.Hashtable<java.lang.String,java.util.Hashtable<java.lang.Object,AspectAndDistanceToLeaf>> mergeAspects, java.lang.String mergeTagSelectors, HasParentChildAttribute.ParentChildEnum parentChild)`
    `XBRLStructuralNode[]` | XBRLConceptRelationshipNode.`readDefinitionNodeSubTree(XBRLDefinitionNodeUse dnu, XBRLStructuralTable xbrlTable, java.util.Hashtable<java.lang.String,java.util.Hashtable<java.lang.Object,AspectAndDistanceToLeaf>> mergeAspects, java.lang.String mergeTagSelectors, HasParentChildAttribute.ParentChildEnum parentChild)`

  - ### Uses of XBRLStructuralNode in com.ihr.xbrl.om.table.layout

    Methods in com.ihr.xbrl.om.table.layout that return XBRLStructuralNode
    Modifier and Type | Method and Description
    --- | ---
    `XBRLStructuralNode` | CellHeader.`getTableStructuralNode()` Gets the table structural node.

    Constructors in com.ihr.xbrl.om.table.layout with parameters of type XBRLStructuralNode
    Constructor and Description
    `CellHeader(Group group, XBRLStructuralNode nu, CellHeader parent, EffectiveBreakdown effectiveBreakdown, int openNodeValueIndex)` Instantiates a new cell header.
    `OpenCellHeader(Group group, XBRLStructuralNode nu, CellHeader parent, EffectiveBreakdown effectiveBreakdown)` Instantiates a new open cell header.

  - ### Uses of XBRLStructuralNode in com.ihr.xbrl.om.table.structural

    Subclasses of XBRLStructuralNode in com.ihr.xbrl.om.table.structural
    Modifier and Type | Class and Description
    --- | ---
    `class` | `XBRLClosedRelationshipStructuralNode<T>` The Class XBRLClosedRelationshipStructuralNode.
    `class` | `XBRLClosedStructuralNode` The Class XBRLClosedStructuralNode.
    `class` | `XBRLConceptClosedRelationshipStructuralNode` The Class XBRLConceptClosedRelationshipStructuralNode.
    `class` | `XBRLDimensionClosedRelationshipStructuralNode` The Class XBRLDimensionClosedRelationshipStructuralNode.
    `class` | `XBRLOpenStructuralNode` The Class XBRLOpenStructuralNode.

    Methods in com.ihr.xbrl.om.table.structural that return XBRLStructuralNode
    Modifier and Type | Method and Description
    --- | ---
    `static XBRLStructuralNode[]` | XBRLStructuralNode.`create(XBRLDefinitionNodeUse dnu, XBRLStructuralNode parent, java.util.Hashtable<java.lang.String,java.util.Hashtable<java.lang.Object,AspectAndDistanceToLeaf>> mergeAspects, java.lang.String mergeTagSelectors, XBRLStructuralTable xbrlTable, HasParentChildAttribute.ParentChildEnum parentChildValue)` Factory method to create either an open structural node or a closed structural node depending on the definition node.
    `static XBRLStructuralNode` | XBRLStructuralNode.`create(XBRLDefinitionNodeUse dnu, XBRLStructuralNode parent, java.util.Hashtable<java.lang.String,java.util.Hashtable<java.lang.Object,AspectAndDistanceToLeaf>> mergeAspects, java.lang.String mergeTagSelectors, XBRLStructuralTable xbrlTable, RelationshipGraphNode.Node<?> node)` Creates the.
    `static XBRLStructuralNode` | XBRLStructuralNode.`createRollup(XBRLStructuralNode parent, java.util.Hashtable<java.lang.String,java.util.Hashtable<java.lang.Object,AspectAndDistanceToLeaf>> mergeAspects, java.lang.String mergeTagSelectors)` Factory method to create a roll-up structural node.
    `XBRLStructuralNode` | XBRLStructuralNode.`getNodeAt(int index)`
    `XBRLStructuralNode` | XBRLStructuralBreakdown.`getNodeAt(int index)`
    `XBRLStructuralNode` | StructuralNodeInterface.`getNodeAt(int index)` Access a specific TableStructuralNode by index.
    `XBRLStructuralNode` | XBRLStructuralNode.`getParent()`
    `XBRLStructuralNode` | XBRLStructuralBreakdown.`getParent()`
    `XBRLStructuralNode` | StructuralNodeInterface.`getParent()` Access to the parent node of this StructuralNodeInterface.

    Methods in com.ihr.xbrl.om.table.structural that return types with arguments of type XBRLStructuralNode
    Modifier and Type | Method and Description
    --- | ---
    `java.util.Iterator<XBRLStructuralNode>` | XBRLStructuralNode.`getNodes()`
    `java.util.Iterator<XBRLStructuralNode>` | XBRLStructuralBreakdown.`getNodes()`
    `java.util.Iterator<XBRLStructuralNode>` | StructuralNodeInterface.`getNodes()` Allows to iterate all nodes in the right representation order.
    `java.util.Iterator<XBRLStructuralNode>` | XBRLStructuralBreakdown.`getNodes(XBRLBreakdown bd)` Returns an iterator over TableStructuralNode that belongs to the particular XBRLBreakdown passed in as a parameter.

    Methods in com.ihr.xbrl.om.table.structural with parameters of type XBRLStructuralNode
    Modifier and Type | Method and Description
    --- | ---
    `boolean` | XBRLStructuralNode.`addChild(XBRLStructuralNode child)` Append a new children to this tree node.
    `static XBRLStructuralNode[]` | XBRLStructuralNode.`create(XBRLDefinitionNodeUse dnu, XBRLStructuralNode parent, java.util.Hashtable<java.lang.String,java.util.Hashtable<java.lang.Object,AspectAndDistanceToLeaf>> mergeAspects, java.lang.String mergeTagSelectors, XBRLStructuralTable xbrlTable, HasParentChildAttribute.ParentChildEnum parentChildValue)` Factory method to create either an open structural node or a closed structural node depending on the definition node.
    `static XBRLStructuralNode` | XBRLStructuralNode.`create(XBRLDefinitionNodeUse dnu, XBRLStructuralNode parent, java.util.Hashtable<java.lang.String,java.util.Hashtable<java.lang.Object,AspectAndDistanceToLeaf>> mergeAspects, java.lang.String mergeTagSelectors, XBRLStructuralTable xbrlTable, RelationshipGraphNode.Node<?> node)` Creates the.
    `static XBRLStructuralNode` | XBRLStructuralNode.`createRollup(XBRLStructuralNode parent, java.util.Hashtable<java.lang.String,java.util.Hashtable<java.lang.Object,AspectAndDistanceToLeaf>> mergeAspects, java.lang.String mergeTagSelectors)` Factory method to create a roll-up structural node.

    Constructors in com.ihr.xbrl.om.table.structural with parameters of type XBRLStructuralNode
    Constructor and Description
    `XBRLClosedRelationshipStructuralNode(XBRLDefinitionNodeUse dnu, XBRLStructuralNode parent, java.util.Hashtable<java.lang.String,java.util.Hashtable<java.lang.Object,AspectAndDistanceToLeaf>> mergeAspects, java.lang.String mergeTagSelectors, RelationshipGraphNode.Node<?> node)` Instantiates a new XBRL closed relationship structural node.
    `XBRLClosedStructuralNode(XBRLDefinitionNodeUse base, XBRLStructuralNode parent, java.util.Hashtable<java.lang.String,java.util.Hashtable<java.lang.Object,AspectAndDistanceToLeaf>> mergeAspects, java.lang.String mergeTagSelectors)` Instantiates a new XBRL closed structural node.
    `XBRLConceptClosedRelationshipStructuralNode(XBRLDefinitionNodeUse dnu, XBRLStructuralNode parent, java.util.Hashtable<java.lang.String,java.util.Hashtable<java.lang.Object,AspectAndDistanceToLeaf>> mergeAspects, java.lang.String mergeTagSelectors, RelationshipGraphNode.Node<?> node)` Instantiates a new XBRL concept closed relationship structural node.
    `XBRLDimensionClosedRelationshipStructuralNode(XBRLDefinitionNodeUse dnu, XBRLStructuralNode parent, java.util.Hashtable<java.lang.String,java.util.Hashtable<java.lang.Object,AspectAndDistanceToLeaf>> mergeAspects, java.lang.String mergeTagSelectors, RelationshipGraphNode.Node<?> node)` Instantiates a new XBRL dimension closed relationship structural node.
    `XBRLOpenStructuralNode(XBRLDefinitionNodeUse base, XBRLStructuralNode parent, java.util.Hashtable<java.lang.String,java.util.Hashtable<java.lang.Object,AspectAndDistanceToLeaf>> mergeAspects, java.lang.String mergeTagSelectors)` Instantiates a new XBRL open structural node.
    `XBRLStructuralNode(XBRLDefinitionNodeUse base, XBRLStructuralNode parent, java.util.Hashtable<java.lang.String,java.util.Hashtable<java.lang.Object,AspectAndDistanceToLeaf>> mergeAspects, java.lang.String mergeTagSelectors)` Creates an instance of a TableStructuralNode and collects all aspects indicated in the definition node indicated in the base parameter.