segram.nlp.backend.rulebased.lang.en.grammar.doc module

class segram.nlp.backend.rulebased.lang.en.grammar.doc.RulebasedEnglishDoc(doc: Doc | Doc, smap: Mapping[tuple[int, int], Sent] | None = None)[source]

Bases: RulebasedEnglishGrammar, EnglishDoc, DocNLP

Rule-based spacy English document element.

All grammar classes must be defined as slots classes. This is necessary for ensuring low-memory footprint and better computational efficiency. Even classes with no new slots need to declare __slots__ = (). This requirement is checked during class construction. Other class-specific requirements of this sort as well as their related validation checks may be implemented on specialized grammar classes using the standard __init_subclass__ interface. This allows abstract base classes further down the inheritance chain to check for more complex requirements as well as apply dynamic class customizations.