PresentationRelationshipContainerApi

Purely abstract trait offering a presentation relationship query API.

Purely abstract trait offering a presentation relationship query API.

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

Authors

Chris de Vreeze

class Object
trait Matchable
class Any

Value members

Abstract methods

Filters the consecutive (!) parent-child 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! The relationship paths are as long as possible, but on encountering a cycle in a path it stops growing beyond a certain path length.

Filters the consecutive (!) parent-child 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! The relationship paths are as long as possible, but on encountering a cycle in a path it stops growing beyond a certain path length.

def filterIncomingParentChildRelationships(targetConcept: EName)(p: ParentChildRelationship => Boolean): IndexedSeq[ParentChildRelationship]

Filters parent-child relationships that are incoming to the given concept.

Filters parent-child relationships that are incoming to the given concept.

Filters the consecutive (!) parent-child 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! The relationship paths are as long as possible, but on encountering a cycle in a path it stops growing beyond a certain path length.

Filters the consecutive (!) parent-child 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! The relationship paths are as long as possible, but on encountering a cycle in a path it stops growing beyond a certain path length.

def filterOutgoingParentChildRelationships(sourceConcept: EName)(p: ParentChildRelationship => Boolean): IndexedSeq[ParentChildRelationship]

Filters parent-child relationships that are outgoing from the given concept.

Filters parent-child relationships that are outgoing from the given concept.

def filterOutgoingParentChildRelationshipsOnElr(sourceConcept: EName, elr: String): IndexedSeq[ParentChildRelationship]

Filters parent-child relationships that are outgoing from the given concept on the given ELR.

Filters parent-child relationships that are outgoing from the given concept on the given ELR.

def filterPresentationRelationshipsOfType[A <: PresentationRelationship](relationshipType: ClassTag[A])(p: A => Boolean): IndexedSeq[A]

Finds all "following" ("consecutive") parent-child relationships.

Finds all "following" ("consecutive") parent-child relationships.

This method is shorthand for:

filterOutgoingParentChildRelationships(relationship.targetConceptEName) { rel =>
 relationship.isFollowedBy(rel)
}

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

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

Finds all parent-child relationships that are incoming to the given concept.

Finds all parent-child relationships that are incoming to the given concept.

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

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

Finds all parent-child relationships that are outgoing from the given concept.

Finds all parent-child relationships that are outgoing from the given concept.

def findAllPresentationRelationshipsOfType[A <: PresentationRelationship](relationshipType: ClassTag[A]): IndexedSeq[A]