Trait

eu.cdevreeze.tqa.queryapi

DimensionalRelationshipContainerApi

Related Doc: package queryapi

Permalink

trait DimensionalRelationshipContainerApi extends AnyRef

Purely abstract trait offering a dimensional relationship query API.

Implementations may be strict or lenient in enforced requirements on the relationship container.

Linear Supertypes
AnyRef, Any
Known Subclasses
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. DimensionalRelationshipContainerApi
  2. AnyRef
  3. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

Type Members

  1. type DomainAwareRelationshipPath = InterConceptRelationshipPath[DomainAwareRelationship]

    Permalink
  2. type DomainMemberRelationshipPath = InterConceptRelationshipPath[DomainMemberRelationship]

    Permalink

Abstract Value Members

  1. abstract def computeHasHypercubeInheritance: Map[EName, IndexedSeq[HasHypercubeRelationship]]

    Permalink

    Finds all inherited has-hypercubes per concept.

    Finds all inherited has-hypercubes per concept. See section 2.6.1 of the XBRL Dimensions specification.

    This is an expensive bulk version of method findAllInheritedHasHypercubes, and should be called as few times as possible.

  2. abstract def computeHasHypercubeInheritanceOrSelf: Map[EName, IndexedSeq[HasHypercubeRelationship]]

    Permalink

    Finds all own or inherited has-hypercubes per concept.

    Finds all own or inherited has-hypercubes per concept. See section 2.6.1 of the XBRL Dimensions specification.

    This is an expensive bulk version of method findAllOwnOrInheritedHasHypercubes, and should be called as few times as possible.

  3. abstract def computeHasHypercubeInheritanceOrSelfReturningElrToPrimariesMaps: Map[EName, Map[String, Set[EName]]]

    Permalink

    Finds all own or inherited has-hypercubes per concept returning Maps from ELRs to all primaries that are source concepts of the has-hypercube relationships with that ELR.

    Finds all own or inherited has-hypercubes per concept returning Maps from ELRs to all primaries that are source concepts of the has-hypercube relationships with that ELR. See section 2.6.1 of the XBRL Dimensions specification.

    This is an expensive bulk version of method findAllOwnOrInheritedHasHypercubesAsElrToPrimariesMap, and should be called as few times as possible.

  4. abstract def computeHasHypercubeInheritanceReturningElrToPrimariesMaps: Map[EName, Map[String, Set[EName]]]

    Permalink

    Finds all inherited has-hypercubes per concept returning Maps from ELRs to all primaries that are source concepts of the has-hypercube relationships with that ELR.

    Finds all inherited has-hypercubes per concept returning Maps from ELRs to all primaries that are source concepts of the has-hypercube relationships with that ELR. See section 2.6.1 of the XBRL Dimensions specification.

    This is an expensive bulk version of method findAllInheritedHasHypercubesAsElrToPrimariesMap, and should be called as few times as possible.

  5. abstract def filterDimensionDefaultRelationships(p: (DimensionDefaultRelationship) ⇒ Boolean): IndexedSeq[DimensionDefaultRelationship]

    Permalink
  6. abstract def filterDimensionDomainRelationships(p: (DimensionDomainRelationship) ⇒ Boolean): IndexedSeq[DimensionDomainRelationship]

    Permalink
  7. abstract def filterDimensionalRelationshipsOfType[A <: DimensionalRelationship](relationshipType: ClassTag[A])(p: (A) ⇒ Boolean): IndexedSeq[A]

    Permalink
  8. abstract def filterDomainMemberRelationships(p: (DomainMemberRelationship) ⇒ Boolean): IndexedSeq[DomainMemberRelationship]

    Permalink
  9. abstract def filterHasHypercubeRelationships(p: (HasHypercubeRelationship) ⇒ Boolean): IndexedSeq[HasHypercubeRelationship]

    Permalink
  10. abstract def filterHypercubeDimensionRelationships(p: (HypercubeDimensionRelationship) ⇒ Boolean): IndexedSeq[HypercubeDimensionRelationship]

    Permalink
  11. abstract def filterIncomingDomainMemberRelationships(targetConcept: EName)(p: (DomainMemberRelationship) ⇒ Boolean): IndexedSeq[DomainMemberRelationship]

    Permalink

    Filters domain-member relationships that are incoming to the given concept.

  12. abstract def filterLongestIncomingConsecutiveDomainMemberRelationshipPaths(targetConcept: EName)(p: (DomainMemberRelationshipPath) ⇒ Boolean): IndexedSeq[DomainMemberRelationshipPath]

    Permalink

    Filters the longest consecutive (!) domain-member relationship paths that are incoming to the given concept.

    Filters the longest consecutive (!) domain-member relationship paths that are incoming to the given concept. Only relationship paths for which all (non-empty) "tails" pass the predicate are accepted by the filter!

    It is a dangerous method in that termination is not guaranteed, but may depend on the passed relationship path predicate. For safety, make sure that the predicate detects cycles and returns false on detecting them.

  13. abstract def filterLongestOutgoingConsecutiveDomainAwareRelationshipPaths(sourceConcept: EName)(p: (DomainAwareRelationshipPath) ⇒ Boolean): IndexedSeq[DomainAwareRelationshipPath]

    Permalink

    Filters the longest consecutive (!) dimension-domain-or-domain-member relationship paths that are outgoing from the given concept.

    Filters the longest consecutive (!) dimension-domain-or-domain-member relationship paths that are outgoing from the given concept. Only relationship paths for which all (non-empty) "inits" pass the predicate are accepted by the filter!

    It is a dangerous method in that termination is not guaranteed, but may depend on the passed relationship path predicate. For safety, make sure that the predicate detects cycles and returns false on detecting them.

  14. abstract def filterLongestOutgoingConsecutiveDomainMemberRelationshipPaths(sourceConcept: EName)(p: (DomainMemberRelationshipPath) ⇒ Boolean): IndexedSeq[DomainMemberRelationshipPath]

    Permalink

    Filters the longest consecutive (!) domain-member relationship paths that are outgoing from the given concept.

    Filters the longest consecutive (!) domain-member relationship paths that are outgoing from the given concept. Only relationship paths for which all (non-empty) "inits" pass the predicate are accepted by the filter!

    It is a dangerous method in that termination is not guaranteed, but may depend on the passed relationship path predicate. For safety, make sure that the predicate detects cycles and returns false on detecting them.

  15. abstract def filterOutgoingDimensionDefaultRelationships(sourceConcept: EName)(p: (DimensionDefaultRelationship) ⇒ Boolean): IndexedSeq[DimensionDefaultRelationship]

    Permalink

    Filters dimension-default relationships that are outgoing from the given concept.

  16. abstract def filterOutgoingDimensionDefaultRelationshipsOnElr(sourceConcept: EName, elr: String): IndexedSeq[DimensionDefaultRelationship]

    Permalink

    Filters dimension-default relationships that are outgoing from the given concept on the given ELR.

  17. abstract def filterOutgoingDimensionDomainRelationships(sourceConcept: EName)(p: (DimensionDomainRelationship) ⇒ Boolean): IndexedSeq[DimensionDomainRelationship]

    Permalink

    Filters dimension-domain relationships that are outgoing from the given concept.

  18. abstract def filterOutgoingDimensionDomainRelationshipsOnElr(sourceConcept: EName, elr: String): IndexedSeq[DimensionDomainRelationship]

    Permalink

    Filters dimension-domain relationships that are outgoing from the given concept on the given ELR.

  19. abstract def filterOutgoingDomainMemberRelationships(sourceConcept: EName)(p: (DomainMemberRelationship) ⇒ Boolean): IndexedSeq[DomainMemberRelationship]

    Permalink

    Filters domain-member relationships that are outgoing from the given concept.

  20. abstract def filterOutgoingDomainMemberRelationshipsOnElr(sourceConcept: EName, elr: String): IndexedSeq[DomainMemberRelationship]

    Permalink

    Filters domain-member relationships that are outgoing from the given concept on the given ELR.

  21. abstract def filterOutgoingHasHypercubeRelationships(sourceConcept: EName)(p: (HasHypercubeRelationship) ⇒ Boolean): IndexedSeq[HasHypercubeRelationship]

    Permalink

    Filters has-hypercube relationships that are outgoing from the given concept.

  22. abstract def filterOutgoingHasHypercubeRelationshipsOnElr(sourceConcept: EName, elr: String): IndexedSeq[HasHypercubeRelationship]

    Permalink

    Filters has-hypercube relationships that are outgoing from the given concept on the given ELR.

  23. abstract def filterOutgoingHypercubeDimensionRelationships(sourceConcept: EName)(p: (HypercubeDimensionRelationship) ⇒ Boolean): IndexedSeq[HypercubeDimensionRelationship]

    Permalink

    Filters hypercube-dimension relationships that are outgoing from the given concept.

  24. abstract def filterOutgoingHypercubeDimensionRelationshipsOnElr(sourceConcept: EName, elr: String): IndexedSeq[HypercubeDimensionRelationship]

    Permalink

    Filters hypercube-dimension relationships that are outgoing from the given concept on the given ELR.

  25. abstract def findAllDimensionDefaultRelationships: IndexedSeq[DimensionDefaultRelationship]

    Permalink
  26. abstract def findAllDimensionDomainRelationships: IndexedSeq[DimensionDomainRelationship]

    Permalink
  27. abstract def findAllDimensionalRelationshipsOfType[A <: DimensionalRelationship](relationshipType: ClassTag[A]): IndexedSeq[A]

    Permalink
  28. abstract def findAllDomainMemberRelationships: IndexedSeq[DomainMemberRelationship]

    Permalink
  29. abstract def findAllHasHypercubeRelationships: IndexedSeq[HasHypercubeRelationship]

    Permalink
  30. abstract def findAllHypercubeDimensionRelationships: IndexedSeq[HypercubeDimensionRelationship]

    Permalink
  31. abstract def findAllIncomingDomainMemberRelationships(targetConcept: EName): IndexedSeq[DomainMemberRelationship]

    Permalink

    Finds all domain-member relationships that are incoming to the given concept.

  32. abstract def findAllInheritedHasHypercubes(concept: EName): IndexedSeq[HasHypercubeRelationship]

    Permalink

    Finds all inherited has-hypercubes.

    Finds all inherited has-hypercubes. See section 2.6.1 of the XBRL Dimensions specification.

  33. abstract def findAllInheritedHasHypercubesAsElrToPrimariesMap(concept: EName): Map[String, Set[EName]]

    Permalink

    Finds all inherited has-hypercubes as a Map from ELRs to all primaries that are source concepts of the has-hypercube relationships with that ELR.

    Finds all inherited has-hypercubes as a Map from ELRs to all primaries that are source concepts of the has-hypercube relationships with that ELR. See section 2.6.1 of the XBRL Dimensions specification.

  34. abstract def findAllLongestIncomingConsecutiveDomainMemberRelationshipPaths(targetConcept: EName): IndexedSeq[DomainMemberRelationshipPath]

    Permalink

    Returns filterLongestIncomingConsecutiveDomainMemberRelationshipPaths(targetConcept)(_ => true).

  35. abstract def findAllLongestOutgoingConsecutiveDomainAwareRelationshipPaths(sourceConcept: EName): IndexedSeq[DomainAwareRelationshipPath]

    Permalink

    Returns filterLongestOutgoingConsecutiveDomainAwareRelationshipPaths(sourceConcept)(_ => true).

  36. abstract def findAllLongestOutgoingConsecutiveDomainMemberRelationshipPaths(sourceConcept: EName): IndexedSeq[DomainMemberRelationshipPath]

    Permalink

    Returns filterLongestOutgoingConsecutiveDomainMemberRelationshipPaths(sourceConcept)(_ => true).

  37. abstract def findAllMembers(dimension: EName, domainElrPairs: Set[(EName, String)]): Set[EName]

    Permalink

    Finds all members in the given effective domain of the given dimension.

  38. abstract def findAllMembers(dimension: EName, domain: EName, dimensionDomainElr: String): Set[EName]

    Permalink

    Finds all members in the given dimension-domain.

    Finds all members in the given dimension-domain. There should be at most one dimension-domain relationship from the given dimension to the given domain, having the given ELR.

  39. abstract def findAllNonUsableMembers(dimension: EName, domainElrPairs: Set[(EName, String)]): Set[EName]

    Permalink

    Finds all non-usable members in the given effective domain of the given dimension.

    Finds all non-usable members in the given effective domain of the given dimension. If a member is usable in one dimension-domain but not usable in another one, it is considered not usable.

  40. abstract def findAllNonUsableMembers(dimension: EName, domain: EName, dimensionDomainElr: String): Set[EName]

    Permalink

    Finds all non-usable members in the given dimension-domain.

    Finds all non-usable members in the given dimension-domain. There should be at most one dimension-domain relationship from the given dimension to the given domain, having the given ELR.

  41. abstract def findAllOutgoingDimensionDefaultRelationships(sourceConcept: EName): IndexedSeq[DimensionDefaultRelationship]

    Permalink

    Finds all dimension-default relationships that are outgoing from the given concept.

  42. abstract def findAllOutgoingDimensionDomainRelationships(sourceConcept: EName): IndexedSeq[DimensionDomainRelationship]

    Permalink

    Finds all dimension-domain relationships that are outgoing from the given concept.

  43. abstract def findAllOutgoingDomainMemberRelationships(sourceConcept: EName): IndexedSeq[DomainMemberRelationship]

    Permalink

    Finds all domain-member relationships that are outgoing from the given concept.

  44. abstract def findAllOutgoingHasHypercubeRelationships(sourceConcept: EName): IndexedSeq[HasHypercubeRelationship]

    Permalink

    Finds all has-hypercube relationships that are outgoing from the given concept.

  45. abstract def findAllOutgoingHypercubeDimensionRelationships(sourceConcept: EName): IndexedSeq[HypercubeDimensionRelationship]

    Permalink

    Finds all hypercube-dimension relationships that are outgoing from the given concept.

  46. abstract def findAllOwnOrInheritedHasHypercubes(concept: EName): IndexedSeq[HasHypercubeRelationship]

    Permalink

    Finds all own or inherited has-hypercubes.

    Finds all own or inherited has-hypercubes. See section 2.6.1 of the XBRL Dimensions specification.

  47. abstract def findAllOwnOrInheritedHasHypercubesAsElrToPrimariesMap(concept: EName): Map[String, Set[EName]]

    Permalink

    Finds all own or inherited has-hypercubes as a Map from ELRs to all primaries that are source concepts of the has-hypercube relationships with that ELR.

    Finds all own or inherited has-hypercubes as a Map from ELRs to all primaries that are source concepts of the has-hypercube relationships with that ELR. See section 2.6.1 of the XBRL Dimensions specification.

  48. abstract def findAllUsableMembers(dimension: EName, domainElrPairs: Set[(EName, String)]): Set[EName]

    Permalink

    Finds all usable members in the given effective domain of the given dimension.

    Finds all usable members in the given effective domain of the given dimension. If a member is usable in one dimension-domain but not usable in another one, it is considered not usable.

  49. abstract def findAllUsableMembers(dimension: EName, domain: EName, dimensionDomainElr: String): Set[EName]

    Permalink

    Finds all usable members in the given dimension-domain.

    Finds all usable members in the given dimension-domain. There should be at most one dimension-domain relationship from the given dimension to the given domain, having the given ELR.

Concrete Value Members

  1. final def !=(arg0: Any): Boolean

    Permalink
    Definition Classes
    AnyRef → Any
  2. final def ##(): Int

    Permalink
    Definition Classes
    AnyRef → Any
  3. final def ==(arg0: Any): Boolean

    Permalink
    Definition Classes
    AnyRef → Any
  4. final def asInstanceOf[T0]: T0

    Permalink
    Definition Classes
    Any
  5. def clone(): AnyRef

    Permalink
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  6. final def eq(arg0: AnyRef): Boolean

    Permalink
    Definition Classes
    AnyRef
  7. def equals(arg0: Any): Boolean

    Permalink
    Definition Classes
    AnyRef → Any
  8. def finalize(): Unit

    Permalink
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] )
  9. final def getClass(): Class[_]

    Permalink
    Definition Classes
    AnyRef → Any
  10. def hashCode(): Int

    Permalink
    Definition Classes
    AnyRef → Any
  11. final def isInstanceOf[T0]: Boolean

    Permalink
    Definition Classes
    Any
  12. final def ne(arg0: AnyRef): Boolean

    Permalink
    Definition Classes
    AnyRef
  13. final def notify(): Unit

    Permalink
    Definition Classes
    AnyRef
  14. final def notifyAll(): Unit

    Permalink
    Definition Classes
    AnyRef
  15. final def synchronized[T0](arg0: ⇒ T0): T0

    Permalink
    Definition Classes
    AnyRef
  16. def toString(): String

    Permalink
    Definition Classes
    AnyRef → Any
  17. final def wait(): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  18. final def wait(arg0: Long, arg1: Int): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  19. final def wait(arg0: Long): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )

Inherited from AnyRef

Inherited from Any

Ungrouped