1: | <?php declare(strict_types=1); |
2: | |
3: | namespace Salient\Contract; |
4: | |
5: | /** |
6: | * @api |
7: | */ |
8: | interface HasTextComparisonFlag |
9: | { |
10: | /** |
11: | * Uncertainty is 0 if values are identical, otherwise 1 |
12: | */ |
13: | public const ALGORITHM_SAME = 1; |
14: | |
15: | /** |
16: | * Uncertainty is 0 if the longer value contains the shorter value, |
17: | * otherwise 1 |
18: | */ |
19: | public const ALGORITHM_CONTAINS = 2; |
20: | |
21: | /** |
22: | * Uncertainty is derived from levenshtein() |
23: | * |
24: | * String length cannot exceed 255 characters. |
25: | */ |
26: | public const ALGORITHM_LEVENSHTEIN = 4; |
27: | |
28: | /** |
29: | * Uncertainty is derived from similar_text() |
30: | */ |
31: | public const ALGORITHM_SIMILAR_TEXT = 8; |
32: | |
33: | /** |
34: | * Uncertainty is derived from shared ngrams relative to the longest string |
35: | */ |
36: | public const ALGORITHM_NGRAM_SIMILARITY = 16; |
37: | |
38: | /** |
39: | * Uncertainty is derived from shared ngrams relative to the shortest string |
40: | */ |
41: | public const ALGORITHM_NGRAM_INTERSECTION = 32; |
42: | |
43: | /** |
44: | * Values are normalised before comparison |
45: | */ |
46: | public const NORMALISE = 64; |
47: | } |
48: |