Make the extractor filter match scope explicit
That is, which parts of the document need to match relative to the part being considered for extraction. This so far is all implicit based on the types of the matching and extracted parts. Explicitly specifying this will therefore further allow us to remove implicit type-specific logic from the core engine, while giving us even more flexibility. This information isn't actually used yet, this is only a small preparation for a larger upcoming rework of the extractor engine.
Showing with 89 additions and 37 deletions