[Bug 28598] [FO31] (editorial) unclarity in description of negative starting position with fn:subsequence

https://www.w3.org/Bugs/Public/show_bug.cgi?id=28598

--- Comment #2 from Abel Braaksma <abel.braaksma@xs4all.nl> ---
You are correct in that I read the Notes as mandatory additional rules. If I
hadn't interpret them as mandatory, I would probably have given less wait to
the precise semantic interpretation.

I do feel as though the mentioned Note is confusing.

Also, I noticed that the 6th para under Notes starts with "As an exception to
the previous two notes", of which the first is "If $length is not specified
then...". 

These notes seem to contradict each other. The 4th para implies (because of "as
an exception to...") that $length, if absent, is taken as +INF. But then the
6th note would invalidate that and return nothing in the edge-case call:

   fn:subsequence($seq, xs:double('-INF'))

But, unless I am very mistaken, I believe the above call is supposed to return
all items. In fact, if only $start is given, and it is negative, all items will
be returned (which, as such, is not amongst the notes, unless the 3rd para,
which is again the confusing one).

SUMMARY (of impr. suggestions / thoughts)
- para 3 "if $startingLoc..." seems incomplete (comment#0)
- para 6 "as an exception" seems to contradict, in part, para 4
- edge case -INF without length argument is not in the notes (or it is para 6)
- edge case negative or zero length is not in the notes
- edge case if $start or $length is NaN, nothing is returned

-- 
You are receiving this mail because:
You are the QA Contact for the bug.

Received on Wednesday, 6 May 2015 01:16:05 UTC