Re: Issue 3. Cursor and explicit positions

Joe, Thank you for the explanations. After re-reading the specification
(well, just the sections you pointed) I realize that my comments were too
hasty. The example in issue 3 about the direction element occurring halfway
through a measure fully invalidate my comments about the need of explicit
positions. I have to study this more in depth.

Forget my comments. Thank you


On Mon, Mar 27, 2017 at 8:17 PM, Joe Berkovitz <joe@noteflight.com> wrote:

> Hi Cecilio,
>
> Thanks for your note. I believe we have been thinking along the same
> lines, actually. I think your recommendations below have already been
> addressed by the proposal:
>
> - Impose the restriction that voices are declared in sequence (not
>> necessary for all the part but just for each measure).
>>
>
> MNX does require that all voices be declared in sequence. These are
> <sequence> elements. See:
>        https://w3c.github.io/mnx/overview/#sequences
>
>
>> - Restrict <cursor> to advance time just for a voice: going back not
>> allowed; advancing time for many voices not allowed.
>>
>
> MNX does propose a cursor, and it is automatically advanced for every note
> or chord. See:
>        https://w3c.github.io/mnx/overview/#the-sequence-cursor
>
>
>> - Change the tag name for better understanding of its semantics:
>> something as <voice-gap>, <gap> or <empty-event> would be better.
>
>
> MNX does propose an empty event, which is currently called <space>. There
> is even an issue suggesting that perhaps an empty <event> would be better.
> See:
>        https://w3c.github.io/mnx/overview/#spaces
>
> Perhaps the document was not clear enough to see this; please let me know
> if I have misunderstood.
>
> Best,
>
> .            .       .    .  . ...Joe
>
> Joe Berkovitz
> Founder
> Noteflight LLC
>
> 49R Day Street
> Somerville MA 02144
> USA
>
> "Bring music to life"
> www.noteflight.com
>
> On Mon, Mar 27, 2017 at 1:59 PM, cecilio <s.cecilio@gmail.com> wrote:
>
>> Just some quick thoughts on cursor and explicit positions.
>>
>> First, just to say that I totally agree with the design goal of reducing
>> book-keeping and post-processing.
>>
>> In my opinion probably the idea of <cursor> comes from the need to
>> represent overlayed voices as I cannot think on other uses. But if each
>> event has a mandatory voice associated to it, and events in a voice are
>> declared before starting the events in the next voice, the need for a
>> cursor practically disappears. It is only needed for gaps in a voice
>> (non-visible rests).
>>
>> So my proposal is to maintain <cursor> but:
>>
>> - Impose the restriction that voices are declared in sequence (not
>> necessary for all the part but just for each measure).
>> - Restrict <cursor> to advance time just for a voice: going back not
>> allowed; advancing time for many voices not allowed.
>> - Change the tag name for better understanding of its semantics:
>> something as <voice-gap>, <gap> or <empty-event> would be better.
>>
>> Or better, suppress <cursor> and replace it by a real empty event (no
>> notes/rests inside it). i.e. instead of:
>>
>>     <cursor>
>>         <duration xx>
>>         <voice x>
>>     </cursor>
>>
>> use
>>
>>     <event>
>>         <duration xx>
>>         <voice x>
>>     </event>
>>
>> As no cursor exists, the MNX user is forced to think in semantic instead
>> of on procedural tricks to achieve the desired goals.
>>
>> As to explicit positions, they are not needed (cursor solves the problem)
>> and introduce much book-keeping/processing because absolute measurements
>> creates a lot of problems. For instance, in notation editors, in operations
>> such as copy/paste, insertions an deletions.
>>
>> Cecilio Salmeron
>>
>
>

Received on Monday, 27 March 2017 21:27:32 UTC