w3c / mnx

Music Notation CG next-generation music markup proposal.
176 stars 19 forks source link

Handle cut/common time symbols #94

Open joeberkovitz opened 6 years ago

joeberkovitz commented 6 years ago

The common time and cut time signature symbols are not currently handled by the <time> element.

clnoel commented 6 years ago

As written in the current spec:

The required signature attribute supplies a time signature that gives the time signature for this measure and for subsequent measures. By default this signature is displayed in normative rendering.

This implies that there is meant to be a way to override the normative (fractional?) rendering. I propose that we allow the signature to continue to be 4/4 for common time and 2/2 for cut time, but offer an additional visual-style attribute. Keeping the note-value form in the signature allows for easier durational calculations of measures.

The visual-style attribute could have the following enumerated values: fractional, cut, common, open

adrianholovaty commented 1 year ago

We briefly chatted about this in today's cochairs meeting. In commit 41a932b2 we changed time signatures to be encoded as two separate keys ("count" and "unit"), and we had the idea that cut/common could be represented with an optional extra key, perhaps called "display", whose values would be limited to certain strings.

So 4/4 common time would be encoded like this:

{
  "count": 4,
  "unit": 4,
  "display": "common"
}

And 2/2 cut time would be encoded like this:

{
  "count": 2,
  "unit": 2,
  "display": "cut"
}

It may seem redundant to encode both "common" and "4/4", but in practice sometimes the "C" (common) glyph has been used for non-4/4 music over the ages. Also, I think it's nice for "count" and "unit" to always be encoded, so there's a single, reliable place applications can find the rhythmic duration.