w3c / musicxml

MusicXML specification
502 stars 56 forks source link

technical element can contain more than one sub-element of the same time #237

Open FabriceSalvaire opened 6 years ago

FabriceSalvaire commented 6 years ago

If I am right, this XML code is valid for the actual schema, but not expected cf. doc

      <note default-x="88.38" default-y="-187.36">
        <pitch>
          <step>E</step>
          <octave>2</octave>
        </pitch>
        <duration>2</duration>
        <voice>5</voice>
        <type>eighth</type>
        <stem>none</stem>
        <staff>2</staff>
        <notations>
          <technical>
            <string>6</string>
            <fret>0</fret>

            <string>6</string>
            <fret>0</fret>
            <string>6</string>
            <fret>0</fret>

          </technical>
        </notations>
      </note>

It is due to <xs:choice minOccurs="0" maxOccurs="unbounded"> which means a technical element can contain 0 or more sub-elements of the specified types, and not zero or one occurrence of the specified types.

mdgood commented 5 years ago

For some of these elements, have multiple occurrences within a technical element can make sense. For many though it probably does not. Perhaps we could add some documentation to clarify this.

I don't think it would be safe to change this in the schema. In general we do not want to invalidate MusicXML 3.1 files in MusicXML 3.2.

In order for us to consider this for MusicXML 3.2, would you be willing to join the W3C Music Notation Community Group? You can join by going to the group home page at https://www.w3.org/community/music-notation/ and clicking the "Join Or Leave This Group" button. Feel free to reach out to me if you have any questions