-
Notifications
You must be signed in to change notification settings - Fork 3
/
Copy pathMatchResult.cs
71 lines (61 loc) · 3.11 KB
/
MatchResult.cs
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
// Copyright © 2023 Textkernel BV. All rights reserved.
// This file is provided for use by, or on behalf of, Textkernel licensees
// within the terms of their license of Textkernel products or Textkernel customers
// within the Terms of Service pertaining to the Textkernel SaaS products.
namespace Textkernel.Tx.Models.API.Matching.Response
{
/// <summary>
/// A single result containing information about the bimetric score between a target and source document
/// </summary>
public interface IBimetricScoredResult
{
/// <summary>
/// An integer score from 0-100 representing the overall fit of the match.
/// This is the result of a proprietary algorithm that combines the
/// <see cref="WeightedScore"/> and the <see cref="ReverseCompatibilityScore"/>
/// into one overall score. Results are sorted by this parameter in descending order.
/// </summary>
int SovScore { get; set; }
/// <summary>
/// An integer score from 0-100 representing how well the current document matched the source document.
/// This calculation is the sum of the unweighted category scores multiplied by their respective applied weight.
/// A score of 100 means that all of the data points in the source document were found in the target document,
/// but the target document may have had many extra data points.
/// <br/>
/// <br/>
/// See also:
/// <br/> <seealso cref="CategoryScoreData.UnweightedScore"/>
/// <br/> <seealso cref="BaseScoredResponseValue{T}.AppliedCategoryWeights"/>
/// </summary>
int WeightedScore { get; set; }
/// <summary>
/// An integer score from 0-100 which represents how well the target document matched to the source document.
/// This is equivalent to the <see cref="WeightedScore"/> if you ran the match/score with the source and
/// target documents swapped. A score of 100 means that all of the data points in the target document were found
/// in the source document, but the source document may have had many extra data points.
/// </summary>
int ReverseCompatibilityScore { get; set; }
/// <summary>
/// Detailed information/evidence about the <see cref="WeightedScore"/>
/// </summary>
EnrichedScoreData EnrichedScoreData { get; set; }
/// <summary>
/// Detailed information/evidence about the <see cref="ReverseCompatibilityScore"/>
/// </summary>
EnrichedScoreData EnrichedRCSScoreData { get; set; }
}
/// <inheritdoc cref="IBimetricScoredResult"/>
public class MatchResult : SearchResult, IBimetricScoredResult
{
/// <inheritdoc/>
public int SovScore { get; set; }
/// <inheritdoc/>
public int WeightedScore { get; set; }
/// <inheritdoc/>
public int ReverseCompatibilityScore { get; set; }
/// <inheritdoc/>
public EnrichedScoreData EnrichedScoreData { get; set; }
/// <inheritdoc/>
public EnrichedScoreData EnrichedRCSScoreData { get; set; }
}
}