public abstract class XBRLStructuralNode extends java.lang.Object implements StructuralNodeInterface
Constructor and Description |
---|
XBRLStructuralNode(XBRLDefinitionNodeUse base,
XBRLStructuralNode parent,
java.util.Map<java.lang.String,java.util.Map<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.
|
Modifier and Type | Method and Description |
---|---|
boolean |
addChild(XBRLStructuralNode child)
Append a new children to this tree node.
|
void |
clear()
Clear.
|
static XBRLStructuralNode[] |
create(XBRLDefinitionNodeUse dnu,
XBRLStructuralNode parent,
java.util.Map<java.lang.String,java.util.Map<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 |
create(XBRLDefinitionNodeUse dnu,
XBRLStructuralNode parent,
java.util.Map<java.lang.String,java.util.Map<java.lang.Object,AspectAndDistanceToLeaf>> mergeAspects,
java.lang.String mergeTagSelectors,
XBRLStructuralTable xbrlTable,
RelationshipGraphNode.Node<?> node)
Creates the.
|
static XBRLStructuralNode |
createRollup(XBRLStructuralTable xTable,
XBRLStructuralNode parent,
java.util.Map<java.lang.String,java.util.Map<java.lang.Object,AspectAndDistanceToLeaf>> mergeAspects,
java.lang.String mergeTagSelectors,
HasParentChildAttribute.ParentChildEnum parentChildValue)
Factory method to create a roll-up structural node.
|
java.util.Iterator<AspectAndDistanceToLeaf> |
getAspects(java.lang.String tag)
Allows to iterate all aspects on this node.
|
AspectsConsolidator |
getAspectsConsolidator()
Gets the aspects consolidator.
|
XBRLDefinitionNodeUse |
getBase()
Access to the XBRLDefinitionNodeUse element that is the source of this
TableStructuralNode.
|
java.util.Map<java.lang.String,java.util.Map<java.lang.Object,AspectAndDistanceToLeaf>> |
getConsolidatedAspects()
Gets the consolidated aspects.
|
abstract java.lang.String |
getLabel(CellHeader cell)
Returns a label that represents the structural node.
|
java.lang.String |
getMergeTagSelector()
Gets the merge tag selector.
|
XBRLStructuralNode |
getNodeAt(int index)
Gets the node at.
|
int |
getNodeCount()
Gets the node count.
|
java.util.Iterator<XBRLStructuralNode> |
getNodes()
Gets the nodes.
|
XBRLStructuralNode |
getParent()
Gets the parent.
|
java.util.Iterator<java.lang.String> |
getTags()
Gets the tags.
|
java.util.HashSet<java.lang.String> |
getTagSelector()
if a tag selector exists in the surrounding definition node.
|
abstract int |
getUse(CellHeader cell)
RS Extension, returns the right value from
FactUseItem to indicate
FactUseItem.BEGINNING , FactUseItem.END or FactUse.NORMAL . |
abstract int |
getValueCount()
Returns the number of nodes for this structural node at this level (does not count children nodes)
For closed nodes, the returned value is most likely 1.
|
abstract boolean |
isAbstract()
Returns true if this is a rule node and it is marked as abstract.
|
boolean |
isAsClosed()
RS Extension to turn closed an open node.
|
abstract boolean |
isConceptAbstract()
Used in the GUI, returns true if the concept is abstract.
|
boolean |
isLeaf()
Checks if is leaf.
|
abstract boolean |
isNegated()
Used in the GUI, returns true if the label matches a concept label for any of the
negated roles.
|
abstract boolean |
isNet()
Used in the GUI, returns true if the label matches a concept label for any of the
net roles.
|
boolean |
isRollUp()
Returns true if this structural node is a roll-up node.
|
abstract boolean |
isTotal()
Used in the GUI, returns true if the label matches a concept label for any of the
total roles.
|
abstract boolean |
isUsable()
Used in the GUI, returns true when the concept is a non abstract primary item or the dimension member is usable=true.
|
void |
resetMergeTagSelector()
Reset merge tag selector.
|
java.lang.String |
toString()
To string.
|
public XBRLStructuralNode(XBRLDefinitionNodeUse base, XBRLStructuralNode parent, java.util.Map<java.lang.String,java.util.Map<java.lang.Object,AspectAndDistanceToLeaf>> mergeAspects, java.lang.String mergeTagSelectors)
base
- the XBRLDefinitionNodeUse that is the source of this TableStructuralNodeparent
- the parent TableStructuralNode to allow navigation up on the tree. This is null for root nodesmergeAspects
- the merge aspectsmergeTagSelectors
- the merge tag selectorspublic java.util.Map<java.lang.String,java.util.Map<java.lang.Object,AspectAndDistanceToLeaf>> getConsolidatedAspects()
public java.util.Iterator<java.lang.String> getTags()
public java.util.Iterator<AspectAndDistanceToLeaf> getAspects(java.lang.String tag)
tag
- the tagpublic XBRLStructuralNode getParent()
getParent
in interface StructuralNodeInterface
public XBRLDefinitionNodeUse getBase()
public boolean addChild(XBRLStructuralNode child)
child
- node to add at the end of the collectionpublic boolean isLeaf()
isLeaf
in interface StructuralNodeInterface
public boolean isRollUp()
public abstract java.lang.String getLabel(CellHeader cell)
cell
- the cellpublic abstract int getUse(CellHeader cell)
FactUseItem
to indicate
FactUseItem.BEGINNING
, FactUseItem.END
or FactUse.NORMAL
.cell
- the cellpublic abstract boolean isAbstract()
public java.util.Iterator<XBRLStructuralNode> getNodes()
getNodes
in interface StructuralNodeInterface
public XBRLStructuralNode getNodeAt(int index)
getNodeAt
in interface StructuralNodeInterface
index
- the indexpublic int getNodeCount()
getNodeCount
in interface StructuralNodeInterface
public static XBRLStructuralNode[] create(XBRLDefinitionNodeUse dnu, XBRLStructuralNode parent, java.util.Map<java.lang.String,java.util.Map<java.lang.Object,AspectAndDistanceToLeaf>> mergeAspects, java.lang.String mergeTagSelectors, XBRLStructuralTable xbrlTable, HasParentChildAttribute.ParentChildEnum parentChildValue) throws XTValidationException
dnu
- definition nodeparent
- is the parent of this structural node or null for root nodesmergeAspects
- the merge aspectsmergeTagSelectors
- the merge tag selectorsxbrlTable
- the xbrl tableparentChildValue
- the parent child valueXTValidationException
- the XT validation exceptionpublic static XBRLStructuralNode create(XBRLDefinitionNodeUse dnu, XBRLStructuralNode parent, java.util.Map<java.lang.String,java.util.Map<java.lang.Object,AspectAndDistanceToLeaf>> mergeAspects, java.lang.String mergeTagSelectors, XBRLStructuralTable xbrlTable, RelationshipGraphNode.Node<?> node)
dnu
- the dnuparent
- the parentmergeAspects
- the merge aspectsmergeTagSelectors
- the merge tag selectorsxbrlTable
- the xbrl tablenode
- the nodepublic static XBRLStructuralNode createRollup(XBRLStructuralTable xTable, XBRLStructuralNode parent, java.util.Map<java.lang.String,java.util.Map<java.lang.Object,AspectAndDistanceToLeaf>> mergeAspects, java.lang.String mergeTagSelectors, HasParentChildAttribute.ParentChildEnum parentChildValue)
xTable
- the x tableparent
- the parentmergeAspects
- the merge aspectsmergeTagSelectors
- the merge tag selectorsparentChildValue
- the parent child valuepublic abstract int getValueCount()
public java.lang.String toString()
toString
in class java.lang.Object
public java.util.HashSet<java.lang.String> getTagSelector()
public void resetMergeTagSelector()
public java.lang.String getMergeTagSelector()
public void clear()
clear
in interface StructuralNodeInterface
public AspectsConsolidator getAspectsConsolidator()
public abstract boolean isTotal()
public abstract boolean isNet()
public abstract boolean isNegated()
public abstract boolean isConceptAbstract()
public abstract boolean isUsable()
public boolean isAsClosed()
Copyright 2006-2015 Reporting Standard S.L., C/ Torrecilla del Puerto 1, 28043, Madrid, Espaņa