{ "version": 1, "provenance": "Generic target-relative approach/enclosure operators. Target-guided review motivated an explicitly separated enclosure and spelling-independent function. No pitches, chord progressions, bar schedules or extracted phrase templates are stored.", "license": "MIT", "patterns": [ { "id": "below", "kind": "approach", "semitones": [ -1 ], "durations": [ "1/2" ], "gap": "0" }, { "id": "above", "kind": "approach", "semitones": [ 1 ], "durations": [ "1/2" ], "gap": "0" }, { "id": "upper_lower", "kind": "enclosure", "semitones": [ 1, -1 ], "durations": [ "1/2", "1/2" ], "gap": "0" }, { "id": "lower_upper", "kind": "enclosure", "semitones": [ -1, 1 ], "durations": [ "1/2", "1/2" ], "gap": "0" }, { "id": "ascending", "kind": "connection", "semitones": [ -2, -1 ], "durations": [ "1/2", "1/2" ], "gap": "0" }, { "id": "descending", "kind": "connection", "semitones": [ 2, 1 ], "durations": [ "1/2", "1/2" ], "gap": "0" }, { "id": "delayed_below", "kind": "approach", "semitones": [ -1 ], "durations": [ "1/2" ], "gap": "1/2" }, { "id": "mapped_upper_lower", "kind": "enclosure", "semitones": [ 2, -1 ], "durations": [ "1/2", "1/2" ], "gap": "0", "diatonic_indices": [ 0 ] }, { "id": "lower_mapped_upper", "kind": "enclosure", "semitones": [ -1, 2 ], "durations": [ "1/2", "1/2" ], "gap": "0", "diatonic_indices": [ 1 ] }, { "id": "separated_lower_upper", "kind": "enclosure", "semitones": [ -1, 2 ], "durations": [ "1/2", "1/2" ], "internal_gaps": [ "1/2" ], "gap": "0", "diatonic_indices": [ 1 ] }, { "id": "chromatic_scalar_up", "kind": "approach", "semitones": [ -3, -2 ], "durations": [ "1/2", "1/2" ], "gap": "0", "diatonic_indices": [ 1 ] }, { "id": "chromatic_scalar_down", "kind": "approach", "semitones": [ 3, 2 ], "durations": [ "1/2", "1/2" ], "gap": "0", "diatonic_indices": [ 1 ] }, { "id": "short_chromatic_up", "kind": "connection", "semitones": [ -2, -1 ], "durations": [ "1/4", "1/4" ], "gap": "0", "difficulty": "sixteenth" }, { "id": "short_chromatic_down", "kind": "connection", "semitones": [ 2, 1 ], "durations": [ "1/4", "1/4" ], "gap": "0", "difficulty": "sixteenth" }, { "id": "triplet_chromatic_up", "kind": "connection", "semitones": [ -2, -1 ], "durations": [ "1/3", "1/3" ], "gap": "0", "difficulty": "triplet" }, { "id": "triplet_chromatic_down", "kind": "connection", "semitones": [ 2, 1 ], "durations": [ "1/3", "1/3" ], "gap": "0", "difficulty": "triplet" }, { "id": "quarter_below", "kind": "approach", "semitones": [ -1 ], "durations": [ "1" ], "gap": "0" }, { "id": "quarter_above", "kind": "approach", "semitones": [ 1 ], "durations": [ "1" ], "gap": "0" } ], "blues": [ { "id": "minor_to_major_third", "degree": 3, "alter": -1, "target_degree": 3 }, { "id": "flat_fifth_to_fifth", "degree": 5, "alter": -1, "target_degree": 5 } ], "max_approach": "3/2", "delayed_approach": { "id": "bounded_semitone_resolution", "max_note": "1/2", "deadline": "4", "steps": [ -1, 1 ], "arrivals": [ "1", "3/2", "2", "5/2", "3", "7/2", "4" ], "holds": [ "1/2", "1" ] }, "passing": { "id": "chromatic_passing", "max_note": "1/2", "steps": [ -1, 1 ], "endpoints": "Source-key/chord motion or separately validated colors; contiguous same-direction semitones." } }