spaCy/spacy/matcher
adrianeboyd 8fe7bdd0fa Improve token pattern checking without validation (#4105)
* Fix typo in rule-based matching docs

* Improve token pattern checking without validation

Add more detailed token pattern checks without full JSON pattern validation and
provide more detailed error messages.

Addresses #4070 (also related: #4063, #4100).

* Check whether top-level attributes in patterns and attr for PhraseMatcher are
  in token pattern schema

* Check whether attribute value types are supported in general (as opposed to
  per attribute with full validation)

* Report various internal error types (OverflowError, AttributeError, KeyError)
  as ValueError with standard error messages

* Check for tagger/parser in PhraseMatcher pipeline for attributes TAG, POS,
  LEMMA, and DEP

* Add error messages with relevant details on how to use validate=True or nlp()
  instead of nlp.make_doc()

* Support attr=TEXT for PhraseMatcher

* Add NORM to schema

* Expand tests for pattern validation, Matcher, PhraseMatcher, and EntityRuler

* Remove unnecessary .keys()

* Rephrase error messages

* Add another type check to Matcher

Add another type check to Matcher for more understandable error messages
in some rare cases.

* Support phrase_matcher_attr=TEXT for EntityRuler

* Don't use spacy.errors in examples and bin scripts

* Fix error code

* Auto-format

Also try get Azure pipelines to finally start a build :(

* Update errors.py


Co-authored-by: Ines Montani <ines@ines.io>
Co-authored-by: Matthew Honnibal <honnibal+gh@gmail.com>
2019-08-21 14:00:37 +02:00
..
__init__.py Dependency tree pattern matcher (#3465) 2019-06-16 13:25:32 +02:00
_schemas.py Improve token pattern checking without validation (#4105) 2019-08-21 14:00:37 +02:00
dependencymatcher.pyx Dependency tree pattern matcher (#3465) 2019-06-16 13:25:32 +02:00
matcher.pxd 💫 Add token match pattern validation via JSON schemas (#3244) 2019-02-13 01:47:26 +11:00
matcher.pyx Improve token pattern checking without validation (#4105) 2019-08-21 14:00:37 +02:00
phrasematcher.pyx Improve token pattern checking without validation (#4105) 2019-08-21 14:00:37 +02:00