MusicXML 3.1 gives many elements an optional id attribute. mx::api exposes the id of elements that have a matching mx::api type (#399). <dynamics>, <fermata> and <accidental-mark> were left out.
Today the value is dropped. Reading a file loses it, and there is no way to author one.
These three elements do not have their own type in mx::api. Each one becomes a MarkData with a MarkType value (src/include/mx/api/MarkData.h). Most other MarkType values come from elements that have no id attribute.
MarkDataChoice (src/include/mx/api/MarkDataChoice.h) carries the data that applies to only some MarkType values.
<dynamics> appears both as a <direction-type> child and inside <notations>. Both have an id.
Related: #397.
MusicXML 3.1 gives many elements an optional
idattribute.mx::apiexposes theidof elements that have a matchingmx::apitype (#399).<dynamics>,<fermata>and<accidental-mark>were left out.Today the value is dropped. Reading a file loses it, and there is no way to author one.
These three elements do not have their own type in
mx::api. Each one becomes aMarkDatawith aMarkTypevalue (src/include/mx/api/MarkData.h). Most otherMarkTypevalues come from elements that have noidattribute.MarkDataChoice(src/include/mx/api/MarkDataChoice.h) carries the data that applies to only someMarkTypevalues.<dynamics>appears both as a<direction-type>child and inside<notations>. Both have anid.Related: #397.