Interest rate swaps are based on a notional amount of money.
The notional can vary during the lifetime of the swap, but only at payment period boundaries.
It is not permitted to vary at an intermediate accrual (compounding) period boundary.

In most cases, the notional amount is not exchanged, with only the net difference being exchanged.
However, in certain cases, initial, final or intermediate amounts are exchanged.
In this case, the notional can be referred to as the principal.

getFxReset

This property is used when the defined amount of the notional is specified in
a currency other than the currency of the swap leg. When this occurs, the notional
amount has to be converted using an FX rate to the swap leg currency. This conversion
occurs at each payment period boundary and usually corresponds to an actual
exchange of money between the counterparties.

When building the notional schedule, if an FxResetCalculation is present,
then at least one of the notional exchange flags should be set to true. If all notional
exchange flags are false then an IllegalArgumentException is thrown.