- From: <bugzilla@jessica.w3.org>
- Date: Thu, 17 Feb 2011 17:42:13 +0000
- To: public-ws-resource-access-notifications@w3.org
http://www.w3.org/Bugs/Public/show_bug.cgi?id=12112 Summary: MaxCharacters behavior is ambiguous Product: WS-Resource Access Version: CR Platform: PC OS/Version: Windows NT Status: NEW Severity: normal Priority: P2 Component: Enumeration AssignedTo: public-ws-resource-access-notifications@w3.org ReportedBy: nathan.burkhart@microsoft.com QAContact: public-ws-resource-access-notifications@w3.org The WS-Enumeration spec says the following about the processing of the MaxCharacters element in Section 4.1: "It can happen that the next item the data source would return to the consumer is larger than MaxCharacters. In this case, the data source MAY skip the item, or MAY return an abbreviated representation of the item that fits inside MaxCharacters. If the data source skips the item, it MAY return it as part of the response to a future Enumerate request with a larger value of MaxCharacters, or it MAY omit it entirely from the enumeration. If the oversized item is the last item to be returned for this enumeration context and the data source skips it, it MUST include the wsen:EndOfSequence item in the Enumerate response and invalidate the enumeration context." The text says that a skipped item MAY be returned in response to a subsequent Enumerate request with the same Context. This implies that when the element(s) get skipped the EnumerateResponse would contain a valid Context and *no* EndOfSequence element. However, it says that if the "last item to be returned" is skipped then the EnumerateResponse MUST contain the EndOfSequence element and invalidate the Context (so a future Enumerate response could not come back and retrieve it). Assume an enumeration has two elements that each take up ~50 characters, and Maxcharacters==75 and MaxElements==10. There are two interpretations that both appear to be valid according to the spec: 1. Return one item along with an EndOfSequence element. The second item can never be retrieved. 2. Return one item. Leave the second item to be returned in response to a subsequent Enumerate request. The first interprets the "last item to be returned" as literally the last in a sequence of items. The second interprets the spec to say that if there are items left but an Enumerate request fails to retrieve any of them, in that case it will return the EndOfSequence (because the assumption is that the next Enumerate request would retrieve more items). Both sound like reasonable interpretations -- the spec should make it clear if beahavior #1, behavior #2, or both are valid implementations. -- Configure bugmail: http://www.w3.org/Bugs/Public/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are the QA contact for the bug. You are the assignee for the bug.
Received on Thursday, 17 February 2011 17:42:18 UTC