...
- if no extra guests are present in the roomroom (extra guests = NumAdults + NumChildren - MaxOccupancy)
- the price defined for NumAdults (when the hotel uses occupancy based pricing) or the room price (for room-based pricing) is used
- the price per children is multiplied by NumChildren
- if the standard bedding of the room is not sufficient for all the guests
- the room is filled up to the maximum standard occupancy considering the adults first then the children
i.e. if MaxOccupancy > NumAdults, NumChildren - (MaxOccupancy - NumAdults) children are priced using the standard child pricing, the remaining ones are priced using the AdditionalChildAmount price - if MaxOccupancy < NumAdults, then NumAdults - MaxOccupancy are considered as additional adults (thus are priced using the AdditionalGuestAmount price) and all of the NumChildren are priced using the AdditionalChildAmount price
- the room is filled up to the maximum standard occupancy considering the adults first then the children
- in all cases, the price per infant is multiplied by NumInfants
...