PR-7 of the Unified Fristenrechner. Final Phase B migration. Closes
all named cross-procedural deadline gaps in the design.
These concepts fire across many proceedings (any patent application,
any civil case, any opposition, any appeal) and don't naturally belong
to one proceeding-tree timeline. Modelled per design §5.2.4 + §5.3 as
event-trigger-only entries: the user picks the trigger ("the moment
the obstacle was removed", "the date the Versäumnisurteil was served")
and the calculator returns the deadline.
Migration 046 adds 7 trigger_events (ids 200–206, paliad-native space
above the youpc-imported 1–114 range so future resync stays clean) and
7 corresponding event_deadlines + 3 new concepts.
WIEDEREINSETZUNG IN 4 LEGAL CONTEXTS (one shared concept slug
re-establishment-of-rights, seeded in PR-1):
- PatG §123(2): trigger 200, 2 months / max 1 year
- ZPO §234(1): trigger 201, **2 WEEKS** / max 1 year
← critical distinction; the 2-weeks-not-months ZPO
case is the most-confused detail of DE
Wiedereinsetzung. notes_de explicitly capitalises
"WOCHEN" so the user reads it before computing.
- EPC Art.122 + R.136(1): trigger 202, 2 months / max 12 months
- DPMA via PatG §123: trigger 203, 2 months / max 1 year
OTHER CROSS-CUTTING:
- Versäumnisurteil-Einspruch (ZPO §339): trigger 204, 2 weeks
Notfrist — keine Verlängerung möglich.
- Schriftsatznachreichung (ZPO §296a): trigger 205, 3 weeks
(court-set typical; placeholder the user can adjust via
click-to-edit if the court actually set a different period)
- Weiterbehandlung (Art.121 EPÜ + R.135): trigger 206, 2 months
Distinct from Wiedereinsetzung — niedrigere Gebühr, applies
BEFORE final loss of rights.
Three new concepts (slug naming per design §4.4):
- versaeumnisurteil-einspruch (DE-only procedure → DE slug)
- schriftsatznachreichung (DE-only → DE slug)
- weiterbehandlung (EPC-native + DE term dominates HLC vocab → DE slug)
Live-verified all 7 trigger_events on paliad.de (tester@hlc.de) via
the existing /tools/fristenrechner "Was kommt nach…" mode:
trigger 200 → 2026-07-06 (2mo PatG, weekend-shift)
trigger 201 → 2026-05-18 (2 WEEKS ZPO — the critical case)
trigger 204 → 2026-05-18 (2 weeks ZPO §339)
trigger 205 → 2026-05-26 (3 weeks ZPO §296a)
trigger 206 → 2026-07-06 (2mo EPC weiterbehandlung)
Out of scope (no calculator-relevant deadlines, would just be search
clutter): Mahnverfahren-Widerspruch (ZPO §345), Validierungsfristen
national (Art. 65 EPÜ → varies per state), Teilanmeldung (R.36 EPC →
"until end of pending parent" is anchor-on-revocation-of-grant).
Phase B is now complete. Phase C (search backend) + Phase D (concept-
card UI) follow per design.
153 lines
11 KiB
SQL
153 lines
11 KiB
SQL
-- t-paliad-131 Phase B6: cross-cutting concepts as trigger_events.
|
|
--
|
|
-- These concepts (Wiedereinsetzung, Versäumnisurteil-Einspruch,
|
|
-- Schriftsatznachreichung, Weiterbehandlung) fire across many proceedings
|
|
-- and don't naturally belong to any one proceeding-tree timeline. Per
|
|
-- design §5.2.4 + §5.3, they're best modelled as event-trigger-only
|
|
-- entries: the user picks the trigger ("the moment the obstacle was
|
|
-- removed", "the date the Versäumnisurteil was served") and the
|
|
-- calculator returns the deadline.
|
|
--
|
|
-- Wiedereinsetzung gets 4 trigger_events sharing one concept slug
|
|
-- (`re-establishment-of-rights`, seeded in PR-1 migration 040) — one per
|
|
-- legal regime since the durations differ:
|
|
-- * PatG §123(2): 2 months / max 12 months from missed deadline
|
|
-- * ZPO §234(1): 2 weeks / max 1 year (note: 2 WEEKS, not months —
|
|
-- the most-confused detail of DE Wiedereinsetzung)
|
|
-- * EPÜ Art.122 + R.136(1): 2 months / max 12 months
|
|
-- * DPMA via PatG §123: same as patent national
|
|
--
|
|
-- Versäumnisurteil-Einspruch (ZPO §339) and Schriftsatznachreichung
|
|
-- (ZPO §296a) get their own concepts. Weiterbehandlung (Art.121 EPÜ +
|
|
-- R.135) is a separate cross-cutting concept (parallel to Wieder-
|
|
-- einsetzung but distinct legally — applies before final loss of rights,
|
|
-- different fee).
|
|
--
|
|
-- ID-space: trigger_events / event_deadlines are bigint. youpc-imported
|
|
-- rows occupy 1-111. Using 200+ for paliad-native cross-cutting rows
|
|
-- leaves headroom for future youpc resync without collision.
|
|
|
|
-- ============================================================================
|
|
-- 1. New concepts (3 new + 1 existing reused for Wiedereinsetzung)
|
|
-- ============================================================================
|
|
|
|
INSERT INTO paliad.deadline_concepts (slug, name_de, name_en, description, aliases, party, category, sort_order) VALUES
|
|
('versaeumnisurteil-einspruch', 'Einspruch gegen Versäumnisurteil', 'Objection to Default Judgment',
|
|
'Einspruch des säumigen Beklagten gegen ein Versäumnisurteil (§ 339 ZPO) — 2 Wochen ab Zustellung des Versäumnisurteils. Setzt das Verfahren in den Stand vor der Versäumnis zurück.',
|
|
ARRAY['Einspruch Versäumnisurteil', 'Versäumnisurteil Einspruch', 'objection default judgment', 'ZPO 339'],
|
|
'defendant', 'submission', 46),
|
|
('schriftsatznachreichung', 'Schriftsatznachreichung', 'Subsequent Written Submission',
|
|
'Nachreichung eines Schriftsatzes nach mündlicher Verhandlung (§ 296a ZPO) — vom Gericht gesetzte Frist, typischerweise 2-3 Wochen. Beschränkt auf Stellungnahme zu in der Verhandlung aufgeworfenen Punkten.',
|
|
ARRAY['Schriftsatznachreichung', 'Nachreichung Schriftsatz', 'subsequent submission', 'ZPO 296a'],
|
|
'both', 'submission', 47),
|
|
('weiterbehandlung', 'Weiterbehandlung', 'Further Processing',
|
|
'Antrag auf Weiterbehandlung der EP-Anmeldung nach Fristversäumung (Art. 121 EPÜ + R. 135 EPC) — 2 Monate ab Zustellung der Mitteilung über den Rechtsverlust. Niedrigere Gebühr als Wiedereinsetzung; nicht für alle Fristen verfügbar.',
|
|
ARRAY['Weiterbehandlung', 'further processing', 'Art. 121 EPÜ', 'R. 135 EPC'],
|
|
'claimant', 'submission', 48)
|
|
ON CONFLICT (slug) DO UPDATE SET
|
|
name_de = EXCLUDED.name_de,
|
|
name_en = EXCLUDED.name_en,
|
|
description = EXCLUDED.description,
|
|
aliases = EXCLUDED.aliases,
|
|
party = EXCLUDED.party,
|
|
sort_order = EXCLUDED.sort_order,
|
|
updated_at = now();
|
|
|
|
-- ============================================================================
|
|
-- 2. Cross-cutting trigger_events (paliad-native, ids 200+)
|
|
-- ============================================================================
|
|
|
|
INSERT INTO paliad.trigger_events (id, code, name, name_de, description, is_active, concept_id) VALUES
|
|
(200, 'wegfall_hindernisses_de_patg', 'Removal of obstacle (PatG §123)',
|
|
'Wegfall des Hindernisses (§ 123 PatG)',
|
|
'Der Tag, an dem das Hindernis weggefallen ist, das die Einhaltung einer patentrechtlichen Frist verhinderte (§ 123(2) PatG).',
|
|
true, 're-establishment-of-rights'),
|
|
(201, 'wegfall_hindernisses_de_zpo', 'Removal of obstacle (ZPO §233)',
|
|
'Wegfall des Hindernisses (§ 233 ZPO)',
|
|
'Der Tag, an dem das Hindernis weggefallen ist, das die Einhaltung einer zivilprozessualen Frist verhinderte (§ 234(1) ZPO).',
|
|
true, 're-establishment-of-rights'),
|
|
(202, 'wegfall_hindernisses_eu_epc', 'Removal of obstacle (EPC Art.122)',
|
|
'Wegfall des Hindernisses (Art. 122 EPÜ)',
|
|
'Der Tag, an dem das Hindernis weggefallen ist, das die Einhaltung einer EPA-Frist verhinderte (Art. 122 EPÜ + R. 136(1) EPÜ).',
|
|
true, 're-establishment-of-rights'),
|
|
(203, 'wegfall_hindernisses_dpma', 'Removal of obstacle (DPMA, PatG §123)',
|
|
'Wegfall des Hindernisses (DPMA, § 123 PatG)',
|
|
'Der Tag, an dem das Hindernis weggefallen ist, das die Einhaltung einer DPMA-Frist verhinderte (§ 123(2) PatG, gilt auch für DPMA-Verfahren).',
|
|
true, 're-establishment-of-rights'),
|
|
(204, 'zustellung_versaeumnisurteil', 'Service of default judgment',
|
|
'Zustellung Versäumnisurteil',
|
|
'Zustellung eines Versäumnisurteils — Trigger für die 2-Wochen-Einspruchsfrist (§ 339 ZPO).',
|
|
true, 'versaeumnisurteil-einspruch'),
|
|
(205, 'ende_muendl_verhandlung', 'End of oral hearing',
|
|
'Ende der mündlichen Verhandlung',
|
|
'Schluss der mündlichen Verhandlung — Trigger für eine ggf. vom Gericht gesetzte Frist zur Schriftsatznachreichung (§ 296a ZPO).',
|
|
true, 'schriftsatznachreichung'),
|
|
(206, 'mitteilung_rechtsverlust_eu', 'Loss-of-rights notice (EPC)',
|
|
'Mitteilung über Rechtsverlust (EPA)',
|
|
'Zustellung der EPA-Mitteilung nach R. 112(1) EPÜ über den Verlust eines Rechts — Trigger für die 2-Monats-Frist zur Weiterbehandlung (Art. 121 EPÜ).',
|
|
true, 'weiterbehandlung')
|
|
ON CONFLICT (id) DO UPDATE SET
|
|
code = EXCLUDED.code,
|
|
name = EXCLUDED.name,
|
|
name_de = EXCLUDED.name_de,
|
|
description = EXCLUDED.description,
|
|
concept_id = EXCLUDED.concept_id,
|
|
is_active = EXCLUDED.is_active;
|
|
|
|
-- ============================================================================
|
|
-- 3. event_deadlines for each cross-cutting trigger
|
|
-- ============================================================================
|
|
|
|
INSERT INTO paliad.event_deadlines (
|
|
id, trigger_event_id, title, title_de,
|
|
duration_value, duration_unit, timing,
|
|
notes, notes_en, alt_duration_value, alt_duration_unit, combine_op,
|
|
is_active, legal_source
|
|
) VALUES
|
|
(200, 200, 'Petition for re-establishment of rights (PatG §123)', 'Wiedereinsetzungsantrag (§ 123 PatG)',
|
|
2, 'months', 'after',
|
|
'Frist beträgt 2 Monate ab Wegfall des Hindernisses (§ 123(2) PatG). Spätestens 1 Jahr nach Ablauf der versäumten Frist; bei Erteilungsfristen + Jahresgebühren keine 1-Jahres-Grenze.',
|
|
'Period is 2 months from removal of the obstacle (PatG §123(2)). Latest 1 year after expiry of the missed deadline; no 1-year cap for grant deadlines and annual fees.',
|
|
NULL, NULL, NULL, true, 'DE.PatG.123.2'),
|
|
(201, 201, 'Petition for re-establishment of rights (ZPO §233)', 'Wiedereinsetzungsantrag (§ 233 ZPO)',
|
|
2, 'weeks', 'after',
|
|
'Frist beträgt 2 WOCHEN (nicht Monate!) ab Wegfall des Hindernisses (§ 234(1) ZPO). Spätestens 1 Jahr nach Ablauf der versäumten Frist (§ 234(3) ZPO).',
|
|
'Period is 2 WEEKS (not months!) from removal of the obstacle (ZPO §234(1)). Latest 1 year after expiry of the missed deadline (ZPO §234(3)).',
|
|
NULL, NULL, NULL, true, 'DE.ZPO.234.1'),
|
|
(202, 202, 'Petition for re-establishment of rights (EPC Art.122)', 'Wiedereinsetzungsantrag (Art. 122 EPÜ)',
|
|
2, 'months', 'after',
|
|
'Frist beträgt 2 Monate ab Wegfall des Hindernisses (R. 136(1) EPÜ). Spätestens 12 Monate nach Ablauf der versäumten Frist.',
|
|
'Period is 2 months from removal of the obstacle (Rule 136(1) EPC). Latest 12 months after expiry of the missed deadline.',
|
|
NULL, NULL, NULL, true, 'EU.EPC-R.136.1'),
|
|
(203, 203, 'Petition for re-establishment of rights (DPMA)', 'Wiedereinsetzungsantrag (DPMA)',
|
|
2, 'months', 'after',
|
|
'Frist beträgt 2 Monate ab Wegfall des Hindernisses (§ 123(2) PatG, gilt auch für DPMA-Verfahren). Spätestens 1 Jahr nach Ablauf der versäumten Frist.',
|
|
'Period is 2 months from removal of the obstacle (PatG §123(2), also applies to DPMA proceedings). Latest 1 year after expiry of the missed deadline.',
|
|
NULL, NULL, NULL, true, 'DE.PatG.123.2'),
|
|
(204, 204, 'Objection to default judgment (ZPO §339)', 'Einspruch gegen Versäumnisurteil (§ 339 ZPO)',
|
|
2, 'weeks', 'after',
|
|
'Einspruch innerhalb von 2 Wochen ab Zustellung des Versäumnisurteils (§ 339(1) ZPO). Notfrist — keine Verlängerung möglich.',
|
|
'Objection within 2 weeks of service of the default judgment (ZPO §339(1)). Statutory deadline — no extension possible.',
|
|
NULL, NULL, NULL, true, 'DE.ZPO.339.1'),
|
|
(205, 205, 'Subsequent written submission (ZPO §296a)', 'Schriftsatznachreichung (§ 296a ZPO)',
|
|
3, 'weeks', 'after',
|
|
'Vom Gericht gesetzte Frist zur Nachreichung von Schriftsätzen nach Schluss der mündlichen Verhandlung (§ 296a ZPO) — typischerweise 2-3 Wochen. Beschränkt auf Stellungnahme zu in der Verhandlung aufgeworfenen Punkten.',
|
|
'Court-set deadline for subsequent submissions after close of oral hearing (ZPO §296a) — typically 2-3 weeks. Limited to comments on matters raised at the hearing.',
|
|
NULL, NULL, NULL, true, 'DE.ZPO.296a'),
|
|
(206, 206, 'Request for further processing (Art.121 EPC)', 'Weiterbehandlungsantrag (Art. 121 EPÜ)',
|
|
2, 'months', 'after',
|
|
'Antrag auf Weiterbehandlung innerhalb von 2 Monaten ab Zustellung der Mitteilung über den Rechtsverlust (R. 135(1) EPÜ). Gebühr pro versäumte Frist. Nicht verfügbar für bestimmte Fristen (z.B. Prioritätsfrist).',
|
|
'Request for further processing within 2 months of service of the loss-of-rights notice (Rule 135(1) EPC). Fee per missed deadline. Not available for certain deadlines (e.g. priority period).',
|
|
NULL, NULL, NULL, true, 'EU.EPC-R.135.1')
|
|
ON CONFLICT (id) DO UPDATE SET
|
|
trigger_event_id = EXCLUDED.trigger_event_id,
|
|
title = EXCLUDED.title,
|
|
title_de = EXCLUDED.title_de,
|
|
duration_value = EXCLUDED.duration_value,
|
|
duration_unit = EXCLUDED.duration_unit,
|
|
timing = EXCLUDED.timing,
|
|
notes = EXCLUDED.notes,
|
|
notes_en = EXCLUDED.notes_en,
|
|
legal_source = EXCLUDED.legal_source,
|
|
is_active = EXCLUDED.is_active;
|