This is an archived snapshot of W3C's public bugzilla bug tracker, decommissioned in April 2019. Please see the home page for more details.
position should be allowed to be empty. Often this value is being calculated and the static type of the calculation will result in an optionally empty type. Proposed rewording: 15.1.8 fn:remove fn:remove($target as item()*, $position as xs:integer?) as item()* Summary: Returns a new sequence constructed from the value of $target with the item at the position specified by the value of $position removed. If $position is the empty sequence, the error FORG--99 is raised. If $position is less than 1 or greater than the number of items in $target, $target is returned. Otherwise, the value returned by the function consists of all items of $target whose index is less than $position, followed by all items of $target whose index is greater than $position. If $target is the empty sequence, the empty sequence is returned.
The working group considered this comment at its meeting today and decided not to accept it. For rationale, please see bug 1467.