Skip to content

expose the id attribute of dynamics, fermata and accidental-mark in mx::api #403

Description

@webern

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.

Metadata

Metadata

Assignees

No one assigned

    Labels

    aiIssues opened by, or through, a coding agent.apiAffects the mx::api layerdesignNot a simple fix. Requires design decisions.featurenew feature request

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions