search_query.ebscohost.linter
Validator for search queries.
Classes
| 
 | Linter for PubMed Query Strings | 
| 
 | Linter for EBSCO Query Strings | 
- class search_query.ebscohost.linter.EBSCOListLinter(parser: EBSCOListParser, string_parser_class: Type[QueryStringParser], ignore_failing_linter: bool = False)
- Bases: - QueryListLinter- Linter for PubMed Query Strings - validate_tokens() None
- Validate token list 
 
- class search_query.ebscohost.linter.EBSCOQueryStringLinter(query_str: str = '', *, original_str: str | None = None, silent: bool = False, ignore_failing_linter: bool = False)
- Bases: - QueryStringLinter- Linter for EBSCO Query Strings - UNSUPPORTED_FIELD_REGEX = '\\b(?!OR\\b)\\b(?!S\\d+\\b)[A-Z]{2}\\b'
 - VALID_TOKEN_SEQUENCES = {TokenTypes.FIELD: [TokenTypes.TERM, TokenTypes.PARENTHESIS_OPEN], TokenTypes.LOGIC_OPERATOR: [TokenTypes.TERM, TokenTypes.FIELD, TokenTypes.PARENTHESIS_OPEN], TokenTypes.PARENTHESIS_CLOSED: [TokenTypes.PARENTHESIS_CLOSED, TokenTypes.LOGIC_OPERATOR, TokenTypes.PROXIMITY_OPERATOR], TokenTypes.PARENTHESIS_OPEN: [TokenTypes.FIELD, TokenTypes.TERM, TokenTypes.PARENTHESIS_OPEN], TokenTypes.PROXIMITY_OPERATOR: [TokenTypes.TERM, TokenTypes.PARENTHESIS_OPEN, TokenTypes.FIELD], TokenTypes.TERM: [TokenTypes.LOGIC_OPERATOR, TokenTypes.PROXIMITY_OPERATOR, TokenTypes.PARENTHESIS_CLOSED]}
 - VALID_fieldS_REGEX: re.Pattern = re.compile('TI|AB|TP|TX|AU|SU|SO|IS|IB|LA|KW|DE|MH|ZY|ZU|PT', re.IGNORECASE)
 - check_invalid_near_within_operators() None
- Check for invalid NEAR and WITHIN operators in the query. EBSCO does not support NEAR and WITHIN operators. 
 - check_invalid_syntax() None
- Check for invalid syntax in the query string. 
 - check_invalid_token_sequences() None
- Check for invalid token sequences based on token type and the previous token type. 
 - check_unsupported_wildcards(query: Query) None
- Check for unsupported characters in the search string. 
 - get_precedence(token: str) int
- Returns operator precedence for logical and proximity operators. 
 - syntax_str_to_generic_field_set(field_value: str) set
- Translate a search field