Die Limitierung von nur Aufschlägen bzw. nur Abschlägen ist auf Dauer ein Hindernis. Es führt dazu, dass im Falle von einem Aufschlag und einem Abschlag stattdessen 2 Aufschläge (oder Abschläge) verwendet werden, wobei einer einen positiven Betrag hat, und einer einen negativen Betrag. Daher sollten diese Einträge auch mischbar sein. Dazu braucht es dann aber auch genaue Regeln, in welcher Reihenfolge die Einträge anzuwenden sind, da der BaseAmount meiner Ansicht nach hier nicht ausreicht!
Zur Sicherstellung der Reihenfolge würde ich ein Attribut "Sequence" einführen (da "Order" bereits anderweitig belegt ist), und die Reduction und Surcharge Elemente müssen in aufsteigender Sequence-Nummer angewendet werden. Doppelt-Sequence Nummern sollten von den Schematron-Regeln erschlagen werden.
vg P. Helger