Loading…
Loading…
Rule
Gradus GE-353 · cite this code — it is permanent. Rule id tie-slur-data-model-boundary
A tie is a per-note boolean meaning 'sustain into the identical pitch that follows in this voice'; a slur is an index-range annotation over a phrase, agnostic to pitch identity. The two must never be inferred from one another or conflated in a single field.
A future refactor collapses `tie` and `slurs` into one 'curve' concept, or a public-API addition represents a slur as consecutive `tiedToNext` flags between notes of different pitch (which the exporter would then either reject or silently mis-tie).
Gould (ties) vs (slurs) treats them as categorically different marks (tie = duration, slur = phrasing/articulation), never interchangeable notation; Ross ch.12 likewise separates 'Ties' and 'Slurs' as distinct engraving operations with distinct curve rules.
This rule can be decided from pitches, durations and voices — no layout required. A validator can check it before anything is drawn.
Gradus GE-353 — Tie and slur are structurally distinct fields, never inferred from each other. Gradus Engraving Rulebook v1.0. https://gradusmusic.com/engraving/rule/tie-slur-data-model-boundary
Rulebook v1.0 · text licensed CC-BY-4.0 · machine-readable at /api/v1/engraving/rules/tie-slur-data-model-boundary