Max-Reger-Institut / Edirom-Online

This is the Edirom-Online of the Reger-Werkausgabe
https://www.reger-werkausgabe.de
GNU General Public License v3.0
0 stars 0 forks source link

Bug: navigation via concordance in sources with parts does not work, when all parts have multiRests at a given distinct measure number. #3

Open nikobeer opened 2 years ago

nikobeer commented 2 years ago

Problem: https://github.com/Max-Reger-Institut/Edirom-Online/blob/develop/add/data/xql/getInternalIdType.xql tests in l. 46 if there is any measure element in a mdivID/part element whose @label or @n attribute equals measureNo of virtual measure id ("measure_mdivID_abc-123_measureNo") to set internalIdType. If we have parts with only distinct/single measures/measureRests or parts with a mix of distinct/single measures/measureRests and parts with multiRests this works. It does not work when all parts have measure/multiRest and measure/@label or measure/@n with values like "1-5" etc. Because @label or @n will never equal to measureNo. Hence internalIdType will be "unknown".

Practical example: Choir with Orchestra and two sources. Source-A = choir parts, Source-B = orchestra score. Score-A begins in all parts with multiRests corresponding to the orchestra's introduction. Source-A will not respond via concordance navigator until a part starts with a single measure or measureRest.

nikobeer commented 2 years ago

Possible solution: Would be sufficient to test if there are any part/measure to get internalIdType = "measure" as retrieving the actual measure-IDs in sources with parts when navigating via concordance is done in the source window and its functions.