8000 schema: revise `incipCode/@form` attribute documentation by pe-ro · Pull Request #1651 · music-encoding/music-encoding · GitHub
[go: up one dir, main page]

Skip to content

schema: revise incipCode/@form attribute documentation #1651

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
wants to merge 2 commits into
base: develop
Choose a base branch
from

Conversation

pe-ro
Copy link
Contributor
@pe-ro pe-ro commented Mar 12, 2025

Currently, incipCode/@form uses the value "parsons" to indicate that the incipit contains an encoding of melodic contour. A better value here would be "melodicContour", defined as

"Representation of 1] diatonic interval direction and quality (e.g., "P0 +P5 +P0 +M2 +P0 -M2"), 2] precise interval direction with size in half steps (e.g., "0 +7 +0 +2 +0 -2"), or 3] general interval direction only (e.g., "sususddsdsdsd", often called "Parsons code")."

This change will better align the @form attribute values with the intended values of the <incipCode> element.

Currently, `incipCode/@form` uses the value "parsons" to indicate that the incipit contains an encoding of melodic contour. A better value here would be "melodicContour", defined as 

> "Representation of 1] diatonic interval direction and quality (e.g., "P0 +P5 +P0 +M2 +P0 -M2"), 2] precise interval direction with size in half steps (e.g., "0 +7 +0 +2 +0 -2"), or 3] general interval direction only (e.g., "sususddsdsdsd", often called "Parsons code")."

This change will better align the `@form` attribute values with the intended values of the `<incipCode>` element.
@github-project-automation github-project-automation bot moved this to 🆕 New in ODD meetings Mar 12, 2025
@github-actions github-actions bot added the Component: Core Schema changes to source/modules/* (assigned automatically) label Mar 12, 2025
@ahankinson
Copy link
Member

I think we should keep "Parsons" as-is, since it's a known and defined specification (p. 16), and it has the advantage of remaining backwards-compatible.

Then we could either have "melodicContour" take both other representations, or split the two representations into their own attribute values so that parsers would know what kind of code to expect when reading it.

@pe-ro
Copy link
Contributor Author
pe-ro commented Mar 12, 2025

I started off doing as you suggest, but figured you'd complain that there would be 3 different values for recording melodic contour. Seems I can't win.

@ahankinson
Copy link
Member

I'm sorry imaginary me had a different opinion than real me. 😁

@ahankinson
Copy link
Member

I just proposed a PR to alter the code types. I hope it doesn't come across as an "aggressive" move -- I meant it as a form of "working, not just talking".

@rettinghaus
Copy link
Member

Instead of calling it "diatonicMelodicContour" why not use the name "humdrumMint" for -P4 -m2 +M3 which would go nicely along "humdrumKern"?

@ahankinson
Copy link
Member

Looking here:

https://www.humdrum.org/Humdrum/commands/mint.html

It looks like mint produces output like this:

**mint
=1
[c]
+P5
+m3
.
-d5
=2
+m2
8r
[C]
-P5
=3
*-

Which means that a format of humdrumMint would need more than just the intervals, right? And it probably should be formatted vertically? That sounds like a bit more than is necessary or desired?

@rettinghaus
Copy link
Member

Maybe @craigsapp could clarify?

@ahankinson
Copy link
Member

I mean, the documentation seems pretty clear to me already?

Also, isn't **mint just another spine type, already covered by the humdrumKern incipit type? I don't remember any restrictions being put on the specific spine types that can be included in the incipit codes.

@musicEnfanthen musicEnfanthen changed the title Revise incipCode/@form attribute documentation schema: revise incipCode/@form attribute documentation Mar 14, 2025
@musicEnfanthen
Copy link
Member

Any action needed for this to continue?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Component: Core Schema changes to source/modules/* (assigned automatically) Status: Needs Decision
Projects
Status: 🆕 New
Development

Successfully merging this pull request may close these issues.

5 participants
0