Heratio Framework API Reference

ResultFusionService
in package

Result Fusion Service.

Combines, ranks, and filters search results from multiple sources. Applies configurable ranking weights and quality scoring.

Table of Contents

Methods

applyAccessFilter()  : Collection
Apply access control filter.
calculateEngagementScore()  : float
Calculate engagement score based on user interaction.
calculateQualityScore()  : float
Calculate quality score based on record completeness.
calculateRelevanceScore()  : float
Calculate relevance score based on query match.
deduplicate()  : Collection
Deduplicate results (remove near-duplicates).
fuse()  : Collection
Fuse results from multiple search strategies.
updateRankingConfig()  : bool
Update ranking configuration.

Methods

applyAccessFilter()

Apply access control filter.

public applyAccessFilter(Collection $results[, object|null $user = null ]) : Collection
Parameters
$results : Collection

Results to filter

$user : object|null = null

Current user (null for anonymous)

Return values
Collection

Filtered results user can access

calculateEngagementScore()

Calculate engagement score based on user interaction.

public calculateEngagementScore(object $item) : float
Parameters
$item : object
Return values
float

calculateQualityScore()

Calculate quality score based on record completeness.

public calculateQualityScore(object $item) : float
Parameters
$item : object
Return values
float

calculateRelevanceScore()

Calculate relevance score based on query match.

public calculateRelevanceScore(object $item, array<string|int, mixed> $parsedQuery) : float
Parameters
$item : object
$parsedQuery : array<string|int, mixed>
Return values
float

deduplicate()

Deduplicate results (remove near-duplicates).

public deduplicate(Collection $results[, float $threshold = 0.9 ]) : Collection
Parameters
$results : Collection
$threshold : float = 0.9
Return values
Collection

fuse()

Fuse results from multiple search strategies.

public fuse(array<string|int, mixed> $resultSets, array<string|int, mixed> $parsedQuery[, int|null $institutionId = null ]) : Collection
Parameters
$resultSets : array<string|int, mixed>

Array of result collections

$parsedQuery : array<string|int, mixed>

Parsed query from QueryUnderstandingService

$institutionId : int|null = null

Institution ID for ranking config

Return values
Collection

Fused and ranked results

updateRankingConfig()

Update ranking configuration.

public updateRankingConfig(array<string|int, mixed> $data[, int|null $institutionId = null ]) : bool
Parameters
$data : array<string|int, mixed>
$institutionId : int|null = null
Return values
bool

        
On this page

Search results