org.xbrlapi.aspects
Interface AspectValueComparator<T extends AspectValue>
public interface AspectValueComparator<T extends AspectValue>
Aspect value comparator
Aspect values can have strictly heirarchical orderings.
This interface defines the functionality of comparators
that define such strict orderings.
- Author:
- Geoff Shuetrim (geoff@galexy.net)
hasChildren
List<T> hasChildren(T parent)
throws XBRLException
- Parameters:
parent - The aspect value.
- Returns:
- true if the parent aspect value has child aspect values and false
otherwise.
- Throws:
XBRLException
getChildren
List<T> getChildren(T parent)
throws XBRLException
- Parameters:
parent - The parent aspect value.
- Returns:
- the ordered list of child aspect values for the given parent
aspect value. The list is empty if there are no child aspect
values in the domain for the given parent aspect value.
- Throws:
XBRLException
hasParent
boolean hasParent(T child)
throws XBRLException
- Parameters:
child - The child aspect value.
- Returns:
- true if this aspect value has a parent aspect value in the aspect
model and false otherwise.
- Throws:
XBRLException
getParent
T getParent(T child)
throws XBRLException
- Parameters:
child - The child aspect value.
- Returns:
- the parent aspect value or null if none exists.
- Throws:
XBRLException
getDepth
int getDepth(T aspectValue)
throws XBRLException
- Parameters:
aspectValue - The aspect value whose ancestor aspect values are to be
counted.
- Returns:
- the number of ancestor aspect values that this aspect value has
in this domain. The return value will be zero if the domain does
not define a heirarchical ordering of aspect values.
- Throws:
XBRLException