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
Suppress the 'non-controlling' attribute in measures #115
Comments
The non-controlling topic has been discussed on the List in August 2012, and again March 2013. Have you seen the Don Giovanni example? I doubt if you really see the problem, it is not mainly the line break question, but the barline alignment. There are two pages as pdf at http://bjungmann.privat.t-online.de/MusicXML/DonGiov195_12.pdf, and a capella file at http://bjungmann.privat.t-online.de/MusicXML/DonGiov195_12.cap and a corresponding MusicXML version at http://bjungmann.privat.t-online.de/MusicXML/DonGiov195_12.xml. capella can convert them into each other since July 2013. As far as I know, capella is the only music notes editor that can cope with this. By the way, line breaks in the midst of measures are quite common and easily written in capella, but you need tricks to export a staff with a half measure without barline at the end to MusicXML. But this is not the use case for the non-controlling attribute, as far as I know. I am not very fond of this attribute's definition, but I've managed to use it somehow. And I cannot give a better solution for the Don Giovanni use case. Or should we simply say, Mozart was wrong? Cheers, |
Hi Bern, Thank you very much for your comments. When proposing this change I was aware of multi-metric music and of the typical Don Giovanni example. But, certainly, I was not aware of any 'barline alignment' problem. In my software, barlines are naturally aligned by the same rule used for aligning noteheads: all barlines at the same position in time must go aligned. In a multi-metric score this implies than only common barlines for all parts will be aligned. This is what human engravers have always done for years without the need to create new concepts for balines. This brings to my mind the MusicXML issue of distinguishing between left and right barlines (what are they? in music there are only barlines, and no one book on music engraving says a word about left-barlines or right-barlines!. The position of a barline, at left or are right is just an issue for a local observer, i.e. a note. Even, in MusicXML certain barlines (repetition) are splitted into two barlines!! In my opinion (just one un-informed opinion, I'm not an expert) the issue of barlines in MusicXML should be revised. Probably, as with natural languages, representation languages condition what can be easily managed and what can not. And probably the problem of 'barline alignment' that you mention and I still not see, is something related to the MusicXML barlines model. MusicXML relies on using the concept of 'measure' for organizing music. But this is a derived concept: a measure is just what is inside between two barlines. Therefore, barlines is all what is needed. The program can determine, if necessary, what is the content for a given measure. Many music notation programs are organized in the same way, around measures. Therefore, they need tricks for dealing, for instance, with music with no time signatures, typically non-visible barlines. Or, as you mention, they need tricks for dealing with music not ended in a barline. In my software, the music internal model does not need the concept of 'measure' as a primary concept and I do not find problems for aligning barlines, for dealing with multimetric music, for dealing with music without time signatures or for dealing with music without a final barline. But I do find problems for exporting MusicXML barlines: when should I export a barline as left barline or as right barline? when a barline is non-controllig? Must I artificially split a repetition barline into a left and a rigt barline? If the suppression of the 'non-controlling' attribute could cause barline alignment problems or other, please close this issue. But in that case I would appreciate clear rules for exporting this attribute. In Don Giovanni example there is only one part in 2/4 time signature, but if there were more, then all the barlines in parts in 2/4 must go aligned! Should the non-controlling attribute still be used?:
MusicXML has done a great job by facilitating not only a good de-facto standard for interchanging music between notation applications, but also for grouping around its forum and working groups all the people interested in music notation representation. Thank you!!! Best regards, |
The music internal model of capella does not need the concept of 'measure' as a primary concept, either. But Finale's and Sibelius' do, and so does MusicXML's model. There may be measures that are not filled completely in some voice or staff, but no barline is generated there. So MusicXML needs the extra hint "non-controlling". If your software is different in that respect, it should easily be able to encode and display such multi metric things. And it should be possible for you to support the non-controlling attribute for exchange. |
Thank you Bernd. I very much appreciate your help. But for now I'm going to forget about exporting non-controlling attribute, as I have more important issues to solve. Nevertheless, I still believe that for a future web standard this attribute should be reviewed. Best regards, |
Thank you for raising this issue. I agree that barlines in MusicXML 3.0 could use some work. Issue #104 for instance covers just one of the points that you made. However, I think a broader look at barline representation is better suited for MNX than for MusicXML 3.1, given the compatibility constraints on MusicXML 3.1. I do believe that the non-controlling attribute is needed to signal non-aligned barlines in multi-metric music. In other types of multi-metric music you can have different time signatures with aligned barlines. Something has to signal that the barlines are not aligned. The non-controlling attribute is MusicXML 3.0's way of doing that, though as you note it is not complete. If someone has a proposal for enhancing the non-controlling attribute to work better in MusicXML 3.1, please let us know. |
Hi Michael, In issue #115 I proposed to suppress this attribute and give some reasons. For me, non-controlling attribute is just a clue for the algorithm to break
It should be expected that line-break algorithms are prepared for breaking
And if my interpretation is wrong and the 'non-controlling' concept is more Hope this helps, On Wed, Sep 21, 2016 at 2:17 AM, Michael Good notifications@github.com
|
Hello Cecilio, As Bernd explained earlier, the non-controlling attribute is not related to system breaks. System breaks are handled with the print element and its new-system attribute, which can indeed be placed anywhere within the flow of music data. The print and sound elements are indeed hints for layout and performance algorithms, as are many element attributes for display and playback. No MusicXML software handles everything in the MusicXML format. A great many features are optional, based on the principles of selective encoding. This does not make them useless. A feature like profiles, proposed as part of MNX, can make this flexibility easier for software to manage. Measures and barlines are special in MusicXML because, like parts, they are a fundamental way of organizing music. In by far the most common case in common Western music notation, measures and barlines are aligned between parts. It makes sense to explicitly signal when this is not the case, as in multi-metric music where measures and barlines are not aligned between parts. The non-controlling attribute conveys musical semantics. This information is not easily deducible from other semantic MusicXML data. As you have pointed out, this could be done in a more comprehensive way, but we need a proposal to consider in order to do that. For MusicXML 3.1 we will not be eliminating the non-controlling attribute, as it is used by applications like capella for just the purposes that it was intended. We are not making incompatible changes to MusicXML 3.1, though such changes may well be made for MNX. |
Michael, many thanks for the explanation. But excuse me, I still do not understand the purpose of the non-controlling You mention that some applications use the non-controlling attribute for You say that "it covers musical semantics, as measures and barlines are A different issue is backwards MusicXML compatibility. But I'm making On Wed, Sep 21, 2016 at 6:10 PM, Michael Good notifications@github.com
|
Hi Cecilio, in this context, "a barline is aligned" means that the barline Hope this helps,
|
Thanks Bernd, I appreciate very much your answers. My understanding of the 'non-controlling' meaning is also what you say: '"a With this meaning, my point is that the attribute is not necessary, as it You say that your MusicXML importer "insert invisible rests, if a barline Even for dealing with un-completed measures, I don't see the need of this All this just creates me more confusion about the meaning of this Clearly, there is something I'm missing. I'm really confused. What is My main points are:
I don't like to argue and really I don't mind if this attribute is dropped Thank you Bernd. Regards, On Thu, Sep 22, 2016 at 3:33 PM, BJungmann notifications@github.com wrote:
|
I agree with you that the non-controlling attribute is more a hardly Sorry this won't really help,
|
On 9/22/2016 8:32 AM, Cecilio Salmeron wrote:
Some notation applications that use the non-controlling attribute, Deducing it from the music in the other staves does not allow such Of course, I don't know of any particular music or notation program that Yes, it could be lost across notation programs, and one that imports a Glenn |
Anyway, thank you Bern. On Thu, Sep 22, 2016 at 5:55 PM, BJungmann notifications@github.com wrote:
|
Hi Glenn, Regards, On Thu, Sep 22, 2016 at 7:14 PM, Glenn-smufl notifications@github.com
|
I am closing this issue. A general multi-metric music question is already included as part of MNX issue 143. |
Excuse my English. If something is not clear please ask me for clarifications.
I propose to suppress the 'non-controlling' attribute in measures. I think there are some conceptual problems about the 'non-controlling' attribute that I would like to share.
I understand that MusicXML inherits the 'non-controlling' concept from MuseData, probably without much questioning. I assume that in MuseData this attribute is just a 'trick' for dealing with multi-metric music.
But for a modern web standard these kind of tricks should be avoided.
MusicXML can provide explicit information about line breaks and page breaks, as well as much more formatting information. Therefore, no need for tricks. Either export all formatting information or do not export it at all and leave the importer application to deal with formatting. In any case, MusicXML importers need to be prepared to deal with files with no formatting information. The 'non-controlling' attribute adds nothing but noise!
It can be argued that this attribute doesn't cause harm and can be of help. But:
" The non-controlling attribute is intended for use in multimetric music like the Don Giovanni minuet. If set to "yes", the left barline in this measure does not coincide with the left barline of measures in other parts. The value is "no" if not specified. "
With this definition the value of this attribute can be easily computed just by analysing the time position of barlines! Do we need to explicitly encode an easily derivable value? It is good practice not to represent derived values, only primitive ones. Among other issues, inconsistencies could arise.
It should be expected that line-break algorithms are prepared for breaking lines at barlines, but also line-break algorithms should naturally deal with music with no barlines at all, without relaying on more tricks (non-visible barlines). And multi-metric music is just an intermediate case between both, in which breaks should be allowed only at barlines common to all parts.
If my interpretation is wrong and the 'non-controlling' concept is more than explicitly signalling easily deducible information from barlines alignment in time, then the concept needs clarification. Probably, it is a new concept: 'hints' for algorithms? This will open the door for demanding more 'hints': why hints for line break and not for other tasks?
So, if my understanding is correct and I did'nt miss anything, I would suggest to consider removing this attribute. Otherwise, I would appreciate clarifications. Thank you!
Regards,
Cecilio Salmeron
The text was updated successfully, but these errors were encountered: