compass.validation.content.Heuristic#

class Heuristic[source]#

Bases: ABC

Perform a heuristic check for mention of a technology in text

Methods

check(text[, match_count_threshold])

Check for mention of a tech in text

Attributes

GOOD_TECH_ACRONYMS

Tech acronyms

GOOD_TECH_KEYWORDS

Tech keywords

GOOD_TECH_PHRASES

Tech phrases

NOT_TECH_WORDS

Not tech keywords

check(text, match_count_threshold=1)[source]#

Check for mention of a tech in text

This check first strips the text of any tech “look-alike” words (e.g. “window”, “windshield”, etc for “wind” technology). Then, it checks for particular keywords, acronyms, and phrases that pertain to the tech in the text. If enough keywords are mentions (as dictated by match_count_threshold), this check returns True.

Parameters:
  • text (str) – Input text that may or may not mention the technology of interest.

  • match_count_threshold (int, optional) – Number of keywords that must match for the text to pass this heuristic check. Count must be strictly greater than this value. By default, 1.

Returns:

boolTrue if the number of keywords/acronyms/phrases detected exceeds the match_count_threshold.

abstract property NOT_TECH_WORDS#

Not tech keywords

Type:

Iterable

abstract property GOOD_TECH_KEYWORDS#

Tech keywords

Type:

Iterable

abstract property GOOD_TECH_ACRONYMS#

Tech acronyms

Type:

Iterable

abstract property GOOD_TECH_PHRASES#

Tech phrases

Type:

Iterable