Set the client's query parameters on a URL, replacing any copy already there. This
is the one rule for every request the engine makes — the URL the caller passed, the
target of a redirect, and a server-supplied next link are all treated alike, so
the caller's filters are the ones that apply to every page.
Both halves of that matter in practice. Servers build their links themselves and get
it wrong: Somacos servers echo modified_since=…+00:00 unencoded, so the + arrives
as a space and every page after the first would be silently unfiltered; others drop
the parameters altogether, or redirect to a URL without them. And list URLs that
already carry a query are common (ALLRIS links papers.asp?body=1), so appending
instead of replacing would send limit twice with different values — which server
wins is anyone's guess.
Set the client's query parameters on a URL, replacing any copy already there. This is the one rule for every request the engine makes — the URL the caller passed, the target of a redirect, and a server-supplied
nextlink are all treated alike, so the caller's filters are the ones that apply to every page.Both halves of that matter in practice. Servers build their links themselves and get it wrong: Somacos servers echo
modified_since=…+00:00unencoded, so the+arrives as a space and every page after the first would be silently unfiltered; others drop the parameters altogether, or redirect to a URL without them. And list URLs that already carry a query are common (ALLRIS linkspapers.asp?body=1), so appending instead of replacing would sendlimittwice with different values — which server wins is anyone's guess.