# Book Coverage Matrix

Date: 2026-06-19

This note summarizes how the current analyzer maps onto the book chapters.

## Chapter Coverage Status

| Book chapter | Status | Current analyzer coverage |
|---|---|---|
| f3 / الجملة | covered | core clause machinery is implicit in all patterns |
| f4 / الوظائف الدلالية | covered | semantic slots are filled across the core categories |
| f5 / التقديم والتأخير | covered | `fronted_object_focus`, `fronted_adjunct_focus`, `external_theme_amma` |
| f6 / الاستثناء | covered | `restrict_illa`, `restrict_innama` |
| f7 / النعت المقطوع | partial | chapter examples are promoted, but the chapter-level distinction is still grouped into broader runtime buckets |
| f8 / المعطوف المقطوع | partial | chapter examples are promoted, but severed subtypes are still not a first-class runtime layer |
| f9 / الجمل المدمجة / الملحقة | partial | `embedded_complement`, `relative_clause`, `riddle_multi_clause`, conditional embedding; chapter theory is broader than the current labels |
| f10 / الظروف | partial | `fronted_adjunct_focus`, `external_theme_amma`, some filler/satellite behavior; `ربض` is still only a proxy layer |
| f11 / عطف النسق | covered | regular coordination and sequential narration with `ثم` are handled |
| f12 / الفاعل | covered | all main VSO patterns recover the subject/actor role |
| f13 / المفعول به | covered | `vso_transitive`, `vso_ditransitive`, `fronted_object_focus`, `vso_multi_argument` |
| f14 / السببية | covered | `causative` is implemented and evaluated |
| f15 / الاستفهام | covered | `interrog_yes_no`, `interrog_hamza_choice`, `interrog_wh_object`, `interrog_wh_subject`, `interrog_wh_place_time` |
| f16 / الإيحاء أو الميتا-براغماتية | partial | sentence-level pragmatic reading exists, but the full chapter theory is still a proxy rather than a discourse model |

## Partial-Chapter Action Notes

These chapters need explicit theory decisions rather than just more examples:

- `f7`: decide whether cut adjective needs its own subtype or can stay inside
  the current filler/rhetorical buckets.
- `f8`: decide whether severed coordination needs a distinct label from plain
  coordination.
- `f9`: decide whether embedded / attached clauses should be summarized under
  one super-layer.
- `f10`: decide whether `مجال / نواة / ربض` should be a first-class structural
  layer in the runtime.
- `f16`: keep the current pragmatic proxy unless the project is ready for a
  discourse layer.

## What Is Fully Implemented

The analyzer currently covers the main book-derived functional families:

- `coordination`
- `embedded_complement`
- `object_types`
- `causative`
- `interrog_yes_no`
- `topic_resumptive`
- `restrict_illa`
- `relative_clause`
- `interrog_hamza_choice`
- `vso_transitive`
- `external_theme_amma`
- `nominal_predicate`
- `connected_filler`
- `interrog_wh_place_time`
- `vso_multi_argument`
- `interrog_wh_subject`
- `vso_ditransitive`
- `restrict_innama`
- `fronted_object_focus`
- `interrog_wh_object`
- `copula_kana`
- `vocative`
- `vso_intransitive`
- `fronted_adjunct_focus`
- `neg_ma`

## Not Promoted To Final Book Categories

These appear in the codebase as helper or fallback labels, but they are not part of the final book-gold target set:

- `needs_manual_category`
- `neg_la`
- `neg_lam`

### Why

- `needs_manual_category`: the source examples were too ambiguous for automatic category assignment and needed human split decisions.
- `neg_la`: kept as a helper detector only.
- `neg_lam`: kept as a helper detector only.

## Collapsed Or Removed Legacy Patterns

These legacy patterns were folded into the final category set instead of staying as separate top-level categories:

- `amma_fa` → `external_theme_amma`
- `cleft_alladhi` → `relative_clause`
- `interrog_hal` → `interrog_yes_no` / `interrog_hamza_choice`
- `interrog_wh_obj` → `interrog_wh_object`
- `interrog_wh_place` → `interrog_wh_place_time`
- `interrog_wh_subj` → `interrog_wh_subject`
- `kana_basic` → `copula_kana` / `nominal_predicate`
- `neg_ma` → `neg_ma`
- `restrict_illa` → `restrict_illa`
- `restrict_innama` → `restrict_innama`
- `topic_sentence` → split into `topic_resumptive`, `fronted_object_focus`, `fronted_adjunct_focus`, `nominal_predicate`, `external_theme_amma`
- `vocative_command` → `vocative`
- `vso_3args` → split into `vso_ditransitive`, `object_types`, `causative`, `connected_filler`
- `vso_basic` → split into the final verbal / nominal / fronting categories
- `vso_ditrans` → `vso_ditransitive`
- `vso_imperfect` → not retained as a standalone final category

## Ambiguous Surfaces That Need Book Context

These surfaces are shared by more than one book category, so the analyzer needs context:

- `ماذا أعطيت زيدا` → `fronted_object_focus` / `interrog_wh_object`
- `هو زيد قائم` → `topic_resumptive` / `vso_multi_argument`
- `زيد عاد` → `nominal_predicate` / `vso_intransitive`

## Bottom Line

The current analyzer is strong on core clause structure, fronting, exception, interrogation, coordination, and causative patterns.
The remaining partial areas are the chapter-level distinctions for severed adjective, severed coordination subtypes, attached clauses, satellite pragmatics, and meta-pragmatics. The concrete examples for those chapters are now promoted; the remaining work is theory granularity.
