OASIS Mailing List ArchivesView the OASIS mailing list archive below
or browse/search using MarkMail.

 


Help: OASIS Mailing Lists Help | MarkMail Help

wsrm message

[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]


Subject: Preliminary Minutes of 7/20 WSRM Teleconference meeting


The prelim minutes of the 7/20 Teleconference are attached.

Please provide corrections before Friday.

Tom Rutt
WSRM TC Chair

-- 
----------------------------------------------------
Tom Rutt	email: tom@coastin.com; trutt@us.fujitsu.com
Tel: +1 732 801 5744          Fax: +1 732 774 5133


Title: Draft Agenda to WSRM TC Conference Call – May 06, 2003

Prelim Minutes WSRM TC Conference Call –July 20, 2004

 

The meeting of the WSRM TC  took place by teleconference 

Tuesday, July 20, 2004, from 5:30 to 7:30 PM Eastern Standard Time

 

 

 

1         Draft Agenda:

1 Draft Agenda

2 Roll Call

3 Minutes Discussion

4 Action Item Review

5 Discussion of Comment Resolutions

6 Discuss results of CD Vote (closing at 7:00 PM during meeting)

7 Discussion of Document Progression Plans

 

2         Roll Call

Attendance:

First Name

Last Name

Email

Role

Company

Voting Level

Jacques

Durand

jdurand@us.fujitsu.com

Member

Fujitsu

1

Kazunori

Iwasa

kiwasa@jp.fujitsu.com

Secretary

Fujitsu

1

Tom

Rutt

tom@coastin.com

TC Chair

Fujitsu

1

Jishnu

Mukerji

jishnu@hp.com

Member

Hewlett-Packard

1

Robert

Freund

bob.freund@hitachisoftware.com

Member

Hitachi

1

Eisaku

Nishiyama

nishiy_e@itg.hitachi.co.jp

Member

Hitachi

1

Nobuyuki

Yamamoto

no_yama@bisd.hitachi.co.jp

Member

Hitachi

1

John

Fuller

jfuller@wernervas.com

Observer

Individual

 

Junichi

Tatemura

tatemura@sv.nec-labs.com

Member

NEC Corporation

1

Alan

Weissberger

ajwdct@technologist.com

Member

NEC Corporation

1

Abbie

Barbir

abbieb@nortelnetworks.com

Member

Nortel Networks

1

Mark

Peel

mpeel@novell.com

Member

Novell

1

Anish

Karmarkar

Anish.Karmarkar@oracle.com

Member

Oracle

1

Sunil

Kunisetty

Sunil.Kunisetty@oracle.com

Secretary

Oracle

1

jeff

mischkinsky

jeff.mischkinsky@oracle.com

Member

Oracle

1

Doug

Bunting

doug.bunting@Sun.com

Secretary

Sun Microsystems

1

Tony

Graham

Tony.Graham@Sun.com

Member

Sun Microsystems

1

Chi-Yuen

Ng

cyng@cs.hku.hk

Member

Univ of Hong Kong

1

 

 

 Meeting is quorate.

 

3         Minutes Discussion

3.1      Appointment of Minute Taker

Tom Rutt will take minutes.

 

Minutes will serve to record issue resolutions.

3.2      Approval of previous meeting minutes

The minutes of the July 13 teleconf are posted at:

http://www.oasis-open.org/apps/org/workgroup/wsrm/download.php/7803/MinutesWSRMTC071304.htm

 

Alan W moved to approve the minutes,  Doug B seconded.

 

No opposition minutes approved.

4         Status of Action Items

 

4.1      Action 052503-1 (Tom Rutt) pending

 
Tom took an action item to complete the status column of 
pre public review issues list, with correct URLs.

 

4.2      Action 060104-5 (Jacques) Pending

 

Action: Jacques, will propose further edits, on the FAQ for composability.

 

Still open, low priority

 

4.3      Action 070604-1 (Anish and Doug B) Closed

Action on Doug and Anish to come up with a proposal before the end of the week to resolve the schema for references.

 

Anish sent out a proposal

 

5         Discussion of Issues and editorial Comments

The following issues list includes items which have been resolved as of the output of the 7/6/1004 TC meeting:

 

http://www.oasis-open.org/apps/org/workgroup/wsrm/download.php/7725/PublicCommentsIsssues-070604OutputB.html  

 

The following additional issues and comments were circulated to the list for discussion. 

 

 

These need to be resolved before we can vote on a next CD.

 

 

5.1      Comment on the ref Schema

 

·  Minor technical issue (or two) in the reference.xsd schema
From Doug Bunting <Doug.Bunting@Sun.COM> on
24 Jun 2004 15:43:22 -0000

 

·  Re: [wsrm] Minor technical issue (or two) in the reference.xsd schema
From Anish Karmarkar <Anish.Karmarkar@oracle.com> on
25 Jun 2004 22:10:52 -0000

 

Mail From Anish, posted just before the meeting:

·  New schema elment/type decl in WSRM schema to include BareURI
From Anish Karmarkar <Anish.Karmarkar@oracle.com> on
20 Jul 2004 20:45:46 -0000

Tom,

 

Here is a proposal to address the issue raised by Doug [1] regarding the use of URI in the addressing container.

 

1) Below is the schema element and type decl that should be added to the schema at "ws-reliability-1.1.xsd" --

 

<!-- default reference scheme -->

<xsd:element name="BareURI" type="BareURIType">

<xsd:simpleType name="BareURIType">

  <xsd:restriction base="xsd:anyURI" />

</xsd:simpleType>

 

 

Additional changes needed:

1) Table 10, section 4.2.3.2 the value for the row 'Child element' is incorrect. ReplyTo element requires exactly one EII {any}.

 

2) Section 4.2.3.2.1, replace:

"The Sending RMP MAY omit this attribute, when the value of the ReplyTo element is expressed with a value of type URI."

with something like:

"The Sending RMP MUST omit this attribute, when the child element of the ReplyTo element is wsrm:BareURI"

 

3) Section 4.3.1, replace:

"The format or schema of the value of this element is specified by the reference-schema attribute. If the attribute is omitted, the default format of ReplyTo element is URI as defined in [RFC 2396]."

with:

"The format or scheme of the value of this element is specified by the reference-scheme attribute. If the attribute is omitted, the default scheme of ReplyTo element is wsrm:BareURI as defined in Section XXXX"

 

4) Add a new section that defines the wsrm:BareURI element consistent with definition of other elements in the wsrm schema (editorial). This section should also point to Section 6 HTTP binding for an example of how things work with a simple URI.

 

Anish: this is Left as editorial task, needs to be explained using a table or a new section.  Leave for the editor.

 

5) There are a few places where the attribute on the ReplyTo element is called 'reference-schema' rather than 'reference-scheme'. A quick search and replace should fix this. (Note: this is unrelated to the issue raised by Doug)

 

6) Table 15 needs to be modified similar to table 10 in (1) above.

 

7) Section 4.3.1.1 needs to be modified similar to (2) above.

 

8)  Section 6, the following lines need to be changed from:

"If a ReplyTo element present in a Request element or Poll Request header element, sent using the SOAP 1.1 protocol, contains only a URL and uses the 'http:' URL scheme, then the WS-Reliability response MUST be sent using the HTTP binding specified in section 6 of SOAP 1.1."

 

to:

 

"If a ReplyTo element present in a Request element or Poll Request header element, sent using the SOAP 1.1 protocol, uses the wsrm:BareURI (default) reference scheme and uses the 'http:' URL scheme, then the WS-Reliability response MUST be sent using the HTTP binding specified in section 6 of SOAP 1.1."

 

9) Changes to section 6 should also be made (similar to (8) above) for the SOAP 1.2 case..

 

10) example 12, and example 17 need to be changed to include the 'BareURI' element (as a child element of ReplyTo)

 

Hope this addresses the issue raised by Doug.

 

Thx.

 

-Anish

--

 

 

[1] http://www.oasis-open.org/archives/wsrm/200406/msg00176.html

 

Doug: I am happy with putting this in.

 

Ø Action Item: Editing team to put the Ref schema text changes proposed by Anish into the next editor’s draft, along with changes to Accommodate Chris F comment on ReplyTo specification.

 

5.2      Comments from Mark Peel

·  Non-exhaustive proofreading pass on 1.05 spec
From "Mark Peel" <mpeel@novell.com> on
12 Jul 2004 22:11:46 -0000

·  1.05 inconsistency
From "Mark Peel" <mpeel@novell.com> on
12 Jul 2004 22:05:03 -0000

 

The above changes were agreed last week.

 

·  Groups - Contribution-105-Peel-WS-Reliability.pdf uploaded

From mpeel@novell.com on 19 Jul 2004 16:56:45 -0000

 

This document reflects 1.05 consistency resolution, plus editorial changes, and rewordings.  

 

Mark: I will send out a list of changes in here, which might require review.

 

Agreed that Editorial team will Mark Peel contribution 1.05 as a starting point for the next edits.

 

However, all these changes remain subject to review by the group.

 

·  Additional 1.05 questions/clarifications

From "Mark Peel" <mpeel@novell.com> on 19 Jul 2004 18:46:47 -0000

  The following readings (or their potential corrections) are unclear

to me.

 

 

119-120: Synchronous messaging applications require immediate knowledge

of the message status (e.g., Error)

 

  Should "Error" read "fault"?

 

 

 

261-262: When an RMP supports both Deliver and Respond, then it MUST be

able to associate a payload obtained via Respond, with a payload

previously delivered (Deliver), based on Consumer demand.

 

  What does "based on Consumer demand" mean?  When the RMP supports

both Deliver and Respond, it seems to me it should be able to associate

Respond payloads with the Deliver payloads that evoked them whether the

Consumer wants the Respond's payload or not.  Does it add something

meaningful, or should we strike that clause?

 

 

 

407-408: The messaging scope of these agreement items may vary, as

messages may be associated with a group.

 

  The clause "as messages may be associated with a group" does not

explain why or under what circumstances messaging scope may vary (and

aren't all messages are associated with groups, even if they are

singleton groups?).  Should we strike this clause?

 

 

 

835: A Sending RMP MUST include a PollRequest element when the

ReplyPattern agreement item has the value "Poll".

 

  This language suggests the Sending RMP must add a PollRequest element

into any message with the RM-Reply Pattern set to Poll -- which

contradicts the examples given in 6.3.1 and 6.3.2 and would leave

WS-Reliability with no means of doing delayed acking.  Suggested

rewording:

 

835: A Sending RMP MUST send a message which includes a PollRequest

element for a group whose ReplyPattern Agreement Item has the value

"Poll" some time before the group expires.

 

  BTW, does this MUST apply even if the group does not require

Guaranteed Delivery?

 

Doug: This is an example of a general wording issue, which happens throughout the specification.  We are wrapping up things that are not requirements as requirements.  This is supposed to mean the sending rmp can poll whenever it wants to, and when it does is uses the PollRequest element.  There should be no :”MUST” in this sentence.

 

Doug: I suggest an editing team.  Volunteers are: Doug B, Jacques, Iwasa, Mark Peel.  Sunil Continues as Schema Editor, as part of the team.

 

No opposition to this Editing Team being formed.

 

915: The Sending RMP MUST include the SequenceNumRange element when it

specifies which messages in a group are queried for status.

 

   Since SequenceNumRange (or SequenceNumberRange: see below) has a

cardinality of 0 or more rather than 1 or more, I suggest this should

read

 

915: The Sending RMP MAY include the SequenceNumRange element to

request the status of 1 or more specific messages within a group.

 

 

 

1286: Note: In case a message is received with an ending marker, but

not all previous messages have been received, then the group remains

active. No termination process is initiated yet.

 

This note about the receiver side follows a description of sender side

behavior.

 

 

 

1931: Note: The expiry time is calculated at the time a message is

sent, but adding this duration to the time the message is sent.

 

  This unclear note follows B.6.1 and B.6.3.  Should it read

 

Note: the expiry time duration value is calculated at the time a

message is sent, but the Receiving RMP should add this duration to the

time it received the message.

 

 

 

  Also, I found a discrepancy between the spec and the schema:

PollRequest/RefToMessageIds/SequenceNumRange in the 1.05 spec is

PollRequest/RefToMessageIds/SequenceNumberRange in the 1.1 schema.

While the schema rules, we may wish to alter the schema in this case, as

its name is inconsistent with the request element to which it refers,

i.e., Request/MessageId/SequenceNum.

 

 

 

  Finally, a question.  The group establishment logic outlined in 5.1.2

strongly implies a Receiving RMP cannot acknowledge messages received

for a group if it has not received the group's SequenceNum==0 message: a

message after the first might have invalid group items (e.g., using

groupMaxIdleDuration instead of groupExpiryTime) and would get faulted

after being ack'ed.  Am I reading this correctly?

 

 

 

·  Re: [wsrm] Additional 1.05 questions/clarifications

From Sunil Kunisetty <Sunil.Kunisetty@oracle.com> on 19 Jul 2004 22:09:11 -0000

>>

>>

>> 835: A Sending RMP MUST include a PollRequest element when the

>> ReplyPattern agreement item has the value "Poll".

>>

>>   This language suggests the Sending RMP must add a PollRequest element

>> into any message with the RM-Reply Pattern set to Poll -- which

>> contradicts the examples given in 6.3.1 and 6.3.2 and would leave

>> WS-Reliability with no means of doing delayed acking.  Suggested

>> rewording:

>>

>> 835: A Sending RMP MUST send a message which includes a PollRequest

>> element for a group whose ReplyPattern Agreement Item has the value

>> "Poll" some time before the group expires.

 

 

  I think the MUST in this case should have been a MAY. Just because the Message

  has a Poll ReplyPattern, it doesn't imply that the Sender MUST send a Poll request

  for the same although it will in most cases. And hence MUST must have been a

  MAY in this case.

 

 -Sunil

 

Agreed to take these comments to the list to propose resolutions.

 

Editing team may propose changes in this area as well.

 

5.3      Comments from Chris Ferris

·  Re: [wsrm] comments on ws-r 1.05
From Christopher B Ferris <chrisfer@us.ibm.com> on
13 Jul 2004 03:36:09 -0000

·  Re: [wsrm] comments on ws-r 1.05
From Christopher B Ferris <chrisfer@us.ibm.com> on
13 Jul 2004 02:47:16 -0000

·  comments on ws-r 1.05
From Christopher B Ferris <chrisfer@us.ibm.com> on
13 Jul 2004 00:22:30 -0000

 

·  consolidated proposals for resolution of Chris F comments
From Tom Rutt <tom@coastin.com> on
20 Jul 2004 09:52:27 -0000

 

Email References used in table:

<JD5>

·  FW: Re: [wsrm] Proposed clarificaiton resolutions to Ferris comments 1,2
From Jacques Durand <JDurand@us.fujitsu.com> on
18 Jul 2004 03:43:31 -0000

 

<ter2>

·  Proposal to accomodate Chris Ferris comments - batch 2
From "Tom Rutt" <tom@coastin.com> on
16 Jul 2004 21:13:03 -0000

 

<DB4>

·  Re: [wsrm] Proposed resolutions for ChrisF issues 3,4,6,8,10
From Doug Bunting <Doug.Bunting@Sun.COM> on
16 Jul 2004 05:07:36 -0000

 

·  Re: Fwd: Re: [wsrm] Proposed clarificaiton resolutions to Ferriscomments 1,2
From Doug Bunting <Doug.Bunting@Sun.COM> on
16 Jul 2004 05:05:06 -0000

 

<JD3>

·  RE: [wsrm] Proposed resolutions for ChrisF issues 3,4,6,8,10
From Jacques Durand <JDurand@us.fujitsu.com> on
16 Jul 2004 03:40:07 -0000

 

<JD2>

·  RE: Fwd: Re: [wsrm] Proposed clarificaiton resolutions to Ferris comments 1,2
From Jacques Durand <JDurand@us.fujitsu.com> on
16 Jul 2004 00:10:11 -0000

 

<DB3>

·  Proposed resolutions for ChrisF issues 3,4,6,8,10
From Doug Bunting <Doug.Bunting@Sun.COM> on
16 Jul 2004 00:05:09 -0000

 

<DB2>

·  Refinements of comments 7 and 9 [Re: [wsrm] Proposed clarificaitonresolutions to Ferris comments 1,2,24,5,7,9,16,19]
From Doug Bunting <Doug.Bunting@Sun.COM> on
15 Jul 2004 22:47:27 -0000

 

 

<DB1>

·  Re: Fwd: Re: [wsrm] Proposed clarificaiton resolutions to Ferriscomments 1,2
From Doug Bunting <Doug.Bunting@Sun.COM> on
15 Jul 2004 20:25:15 -0000

 

<JD1>

·  [wsrm] Proposed clarificaiton resolutions to Ferris comments 1,2
From Jacques Durand <JDurand@us.fujitsu.com> on
15 Jul 2004 00:20:40 -0000

 

<ter1>

·  Proposed clarificaiton resolutions to Ferris comments 1,2,24,5,7,9,16,19
From Tom Rutt <tom@coastin.com> on
14 Jul 2004 20:53:41 -0000

 

 

 

1,

2,

24.

<ter1> Need to clarify that no implementation details are prescribed for abstract RMP operations:

 

Proposed clarification:

 

Add at the end of line 85 the following sentence to the qos bullet:

 

These abstract operations are associated with processing of an RMP, however implementation aspects regarding how, or when, they are invoked are not prescribed by this specification.

<JD1> Although these ops are first mentioned in line 85, this reference is very general and does not call for such a detailed adjustment that early. In line 85, I would just add "These operations are defined in Section 1.5".

</JD1>

 

Add the following new paragraph between lines 105 and 106, before the Note

 

The direction of the arrows for the qos contract abstract operations, shown in Figure 1, represents the direction of information flow associated with the operation. Implementation details of how these operations are invoked, including which entity invokes the abstract operation, are not prescribed by this specification.

<JD1> OK, but I would remove second sentence if we use my rewording below for the Note, as it is redundant.

 

<JD1> I think we need an even more explicit statement, for addressing comments 1,2 from CF:

" These operations are abstractly defined here as transfer of information

(message payload, error notice) between the RMP and external components (Producer, Consumer). This specification makes no requirement on how these operations should be implemented, and by which component. Defining the reliability QoS contracts does not require more concrete definitions, which are left to implementations. "

 

I would place the statement in the "Note" after Figure 1, replacing and expanding on sentence in line 110 (" The interpretation of these operations is a matter of implementation.")

 

<DB1> I agree with the general direction outlined in the attached discussion but think we should go a bit further.

 

With regard to the set of definitions, we should be clear these operations define the abstract interface to a subset of the infrastructure on either the sending or the receiving side that may not be nearly this clearly separated.  That is, the RMP itself is abstract in the sense that it has the abstract interface described using the submit, notify, deliver and respond operations.  The RMP is also abstract because the infrastructure support for reliable delivery may be more or less comprehensive that what we have arbitrarily chosen to place within that bucket for the purposes of making our specification clear.  This adds up to meaning the notify operation (for example) may or may not exist in a real deployment, not just that the producer might actually poll for errors.

 

If we start with Jacques' suggestion for text below Figure 1:

 

… above

 

[As an aside, this point seems important enough not to relegate it to a (non-normative?) note and should be in the regular specification text.]  I would re-word it slightly:

 

"

These operations and executable components are abstractly defined here to simplify discussion of the WS-Reliability protocol and not to imply a particular API or component separation.  The separations described here between producer and consumer and their associated RMP do indicate the expected value of placing WS-Reliability support within an infrastructure component.  However, any implementation choices leading to the externally observable properties discussed in this specification are equally valid.

 

The operations themselves describe a transfer of information (payload or error notice) between external components (Producer, Consumer) and an associated RMP.  Again, this specification makes no requirement on how these operations should be implemented, by which component or if these operations are explicitly present in an implementation.

"

 

<JD3> Overall the 1st part of this rewording looks fine to me, as it rightly emphasizes that the whole model (components + operations) is an abstract template that can be instantiated in many ways, depending on how we want the QoS contract to apply, between which parties.

 

One edit: I believe the singular form should be used:

"...any implementation choices leading to the externally observable properties discussed in this specification are equally valid"

--->

"...any implementation choice leading to the externally observable properties discussed in this specification is equally valid"

 

Other comments inline, for the operation definitions </JD3>

 

<JD5>

 

Lines 182-198: generalize the definitions of the four abstract operations

 

 

Deliver:

 

An abstract operation supported by the RMP. When invoked on a Receiving RMP, the operation makes the payload of one Reliable Message available to the Consumer. For example, in one specific implementation choice, the payload is placed into a queue by the Receiving RMP to be consumed by an application component.

 

Submit:

 

An abstract operation supported by the RMP. When invoked, the operation transfers payload data from the Producer to the Sending RMP (e.g., a request to the Sending RMP to take responsibility for the Reliable Message).

 

Respond:

 

An abstract operation supported by the RMP. When invoked, the operation transfers payload data from the Consumer to a Receiving RMP.

 

Notify:

 

An abstract operation supported by the RMP. When invoked, the operation makes available a response payload received by the Sending RMP, to the Producer, or makes available to the Producer the status of a Reliable Message (e.g., a notification that the Sending RMP failed to send a Reliable Message).

 

 

with the following:

-----------------------

 

Deliver:

 

An abstract operation associated with a Receiving RMP. When invoked, the operation makes the payload of one Reliable Message available to the Consumer from the Receiving RMP. For example, in one specific implementation choice, the payload is placed into a queue by the Receiving RMP to be consumed by an application component.

 

<JD1> The "associated with a Receiving RMP" might still be misinterpreted.

I would replace 1st sentence with:

"An abstract operation that controls a transfer from Receiving RMP to Consumer."

 

Submit:

 

An abstract operation associated with a Sending RMP. When invoked, the operation transfers payload data from the Producer to the Sending RMP (e.g., a request to the Sending RMP to take responsibility for the Reliable Message).

 

<JD1> I would replace 1st sentence with:

"An abstract operation that controls a transfer from Producer to Sending RMP."

 

Respond:

 

An abstract operation associated with a Receiving RMP. When invoked, the operation transfers payload data from the Consumer to a Receiving RMP.

 

<JD1> I would replace 1st sentence with:

"An abstract operation that controls a transfer from Consumer to Receiving RMP."

 

Notify:

 

An abstract operation associated with a Sending RMP. When invoked, the operation makes available a response payload received by the Sending RMP, to the Producer, or makes available to the Producer the status of a Reliable Message (e.g., a notification that the Sending RMP failed to send a Reliable Message).

 

<JD1> similarly,

"An abstract operation that controls a transfer from Sending RMP to Producer."

plus a narrowing: replace "the status" by "the failure status".

 

 

<DB1>

 

With this background, we can be a bit more straightforward with our definitions of the operations.  We have already described them as abstract and for the exposition of the text.  This leaves us able to simplify the abstract interface and talk directly about invocation and information transfer.  How about:

 

"

Deliver:

 

An abstract operation that transfers the payload of one Reliable Message from Receiving RMP to Consumer.  For example, in one specific implementation choice, the payload is placed into a queue by the Receiving RMP to be consumed by an application component.

 

 

<JD3> on Deliver: So you propose to not use anymore the expression "making available".  In that case we should warn that the notion of "transfer" above must also be understood in an abstract way, as a transfer of control (or of responsibility) on the payload, not necessarily as a physical transfer which may take place later (in which case we may not want to wait for this to happen before sending the Ack).

E.g. an RMP may "deliver" by just setting a flag on payload stored in a persistent store, meaning availability to a COnsumer which

may later complete the actual transfer by querying the store.

</JD>

 

<JD5> Answer to JD4 From Doug B: Whether payloads or control of payloads is transfered is a very low implementation detail that does not matter when we are talking about abstract operations on abstract components.  I believe this only confuses the specification.

 

<JD2> my concern was precisely to make sure that "transfer" remains abstract enough and is not understood in a too restrictive way, which could possibly lead a developer to believe (in my above example) that its RMP has to wait for the payload to be physically fetched by the COnsumer, before sending the ack for a delivery.

(that's a possible interpretation, but not the only one.)

To keep "transfer" abstract enough I propose to add a sentence like: "transfer to a component" in above definitions does not imply a complete physical transfer of data. It is, mor generally, the act of making data available in some way to the component.

(see below my more complete proposal)

</JD2>

 

 

Notify:

 

An abstract operation that transfers a failure status or contained payload of one Reliable Message from Sending RMP to Producer.  The transfered status might include an indication the Sending RMP was unable to reliably deliver the message.  The Sending RMP is NOT REQUIRED to invoke this operation for every Reliable Message submitted; it MAY invoke Notify for a subset of the completed Submit operations.

 

 

<JD3>  On notify: the last sentence ("it MAY...") is not clear, and talks of correlation between these ops that I believe should be addressed later in the doc in a more informed context, e.g. section 2.2. Also we may want to move the requirements (statements using the RFC keywords) out of these definitions, and in a more prescriptive section like 2.2. The prescriptive section (2.2) should also say the most basic: that an RMP MUST be able to invoke Notify (regardless how the op is implemented) as well as Deliver. The other operations (Submit, Respond) are to be invoked from outside.</JD>

 

<JD5> Response from Doug on <JD3>  Moving these sentences elsewhere is fine.  I am not sure what is missing (or where) with regard to your last sentence.

 

<JD> nothing missing... I was just saying there is no requirement attached to the invocation of (Submit, Respond) as the RMP is not supposed to invoke these.

</JD5>

 

Submit:

 

An abstract operation that transfers the payload of one Reliable Message from Producer to Sending RMP.  Essentially, the Submit operation is a request to the Sending RMP that it take responsibility for the Reliable Message.

 

Respond:

 

An abstract operation that transfers the payload of one Response Message from Consumer to Receiving RMP.  When supported in the protocol, this payload data will be carried together with RM Reply headers (see below). The Consumer is NOT REQUIRED to invoke this operation for every Reliable Message delivered; it MAY invoke Respond for a subset of the completed Deliver operations.

"

 

<JD3> On Respond:  same remarks as for Notify. Also the 2nd sentence seems not at its place in this a definition, which I believe does not need to mention all the rules associated with these ops. I propose to keep just the 1st sentence, in the def.</JD>

 

<JD5> Response to JD3 from Doug: In another email, you agreed with the general use of forward references from this section.  The second sentence above is a forward reference to the rules you mention, not those rules.

 

   JD: Forward refs are OK,

my concern on your sentence #2 above, is that it is in fact a hidden requirement (the "will be" actually sounds like a MUST), which exposes deeper protocol ramifications than necessary in this section (which I tend to consider just as a glossary). So the sentence tells either too much or not enough, if left here. Instead, we could refer to the section that expands on it (e.g. "more detailed semantics is given in Section 2.2").

</JD5>

 

 

 

<JD4> 1) and 2) follow-up:

<JD4> in addition to proposed resolution (previous emails), we need to fix - or explain – the way we name these operations: we call them currently "RMP operations" at various places, but as noted these abstract operations are not necessarily supported by the RMP.

So to be more precise we could rename them (QoS operations? or transfer operations?) or just explain that this naming does not mean all these ops are supported by an RMP.

</JD4

 

<JD5> my proposal:

 

A) for the terminology section, after compilation of previous other comments:

 

(note again that these definitions do not pretend make explicit all the rules and semantics attached to the usage of these ops, which would be described elsewhere in the spec.) This is along keeping the terminology section as nothing more than a glossary.

 

 

Note also that I use the term "message" instead of "payload" (see C.F. comment #15): although I don't see this as a mjor issue, CF has a point that RMP is a SOAP node (or processor)before all. "payload" may sound specific of an implementation. To be discussed in other mail.

 

Deliver:

"An abstract operation that transfers a message from Receiving RMP to Consumer.  This operation is invoked by the RMP. More details are given in section... "

 

Submit:

"An abstract operation that transfers a message from Producer to Sending RMP.  More details are given in section... "

 

Respond:

"An abstract operation that transfers a message from Consumer to Receiving RMP,  as a response to a previously received message. More details are given in section... "

 

Notify:

"An abstract operation that transfers from Sending RMP to Producer, either a failure status

of a previously sent message, or a message received as response.  This operation is invoked by the RMP. More details are given in section... "

 

</JD5>

-------------------------

<JD5> B) in Section 2.2 that expands on "RMP operations", add:

 

(after line 255 1st sentence that introduces the four ops)

(mostly wording from Doug, +few edits: choices->choice, and some addition on "transfer".)

 

"These operations and executable components are abstractly defined here to simplify discussion of the WS-Reliability protocol and not to imply a particular API or component separation.  The separations described here between producer and consumer and their associated RMP do indicate the expected value of placing WS-Reliability support within an infrastructure component.  However, any implementation choice leading to the externally observable properties discussed in this specification is equally valid.

 

The operations themselves describe a transfer of information (message data or error notice) between external components (Producer, Consumer) and an associated RMP.  This "transfer" does not imply a complete physical transfer of data. It is, more generally, the act of making data available in some way to the component.

 

This specification makes no requirement on how these operations should be implemented, by which component or if these operations are explicitly present in an implementation."

 

[note: other edits may be necessary in 2.2. or elsewhere.

But note that I'd prefer to leave the section 1.2 as is and not overload it with more details on Deliver/Submit/Respond/Notify - although that's where we talk first about these ops - as this is not essential to the purpose of this section (to convey the general RM concepts and scope)]

</JD5> 

 

Doug B: At some point Jacques and Doug need to come to agreement on this, and post it to the list.

 

Jacques: I agree, it is mostly a wording issue here that we have.  We have to be precise enough to define the contract, but not to overly constrain implementations.   As Chris F pointed out, we need to keep away from Implementation details.

 

Ø Action: Jacques an Doug will propose a resolution to Chris F comments 1,2, 10,19, and 24 for discussion by the TC.

2

See comment 1

3

<ter2> Improper reference for ws security

 

Proposed resolutions:

 

Lines 151: change

OASIS WS-Security 2004

to

OASIS Soap Message Security 1.0

 

Line 155: change:

WS-Security 2004

to

OASIS SOAP Message Security 1.0 [WSS]

 

Line 250: change:

WS-Security

to

OASIS Soap Message Security 1.0 [WSS]

 

<DB3> lines 151/5 and 250/1 should have a normative reference to the OASIS

SOAP Message Security 1.0 spec not "WS-Security"

 

ð       As agreed (I believe) during the teleconference, make the change Chris suggested and reference the specification in both places using the correct term.

 

Tom: I hear No opposition to including this proposal in next editor’s draft.

4

<DB3> line 489/90 reads: ... Why is this only a RECOMMENDATION?

"It is RECOMMENDED to NOT resend a message for which an RM-Reply with one of the following Fault types has been received:".

 

==> change to

 

"A Sending RMP MUST NOT resend a message for which it has received an RM-Reply with one of the following Fault types:"

 

I am not sure where group termination due to an error should be covered though expect that would be somewhere in chapter 5.  I do agree both the sending and receiving RMP should terminate a group as soon as such a fault is identified (for the receiving RMP) or received (for the sending RMP). This is complicated because the sending RMP may have to retry or poll before it shares this understanding, meaning the receiving RMP cannot "forget" the group immediately.

 

<JD4> <JD> I guess the reason that is only a recommendation, is that

preventing such resending is not essential to the RM protocol.

(E.g. similarly, we never say that as soon as an Ack is received, any resending MUST stop.)

It is just not paramount (nor always feasible?) to strictly enforce this, implementation-wise, although this is an optimization.

 

As for the dis-ordered sequence of which one message has been faulted, it is indeed

an optimization that we have not done, to terminate the group when one of its

messages has been faulted as above (we currently would wait for the faulted message

to expire, to terminate the group.)

So we could update 5.1.3.5 (Termination by ordered failure) by adding to

the "triggering event" line (both in sending RMP and receiving RMP): "...or a message

is faulted with one of the codes mentioned in section 3.2.1"

</JD>

 

<DB4> For (4), I do not understand a MAY / MUST for stopping the "resend loop" after receiving a Fault without a MAY / MUST for stopping after receiving an acknowledgement.  In both cases, I would prefer MUST since to do otherwise just wastes RMP time.  This would also be one of those nice externally observable requirements.

 

Doug B: whether this is a requirement or a recommendation depends on the consensus of the group.

 

Jacques: I do not have a strong opinion, I do not see a strong opinion to make it a must.  An underlying principle in our spec is that the receiving of Faults is not strong requirement for protocol, because faults can be lost.

 

Doug B: the requirement is not actionable if you do not receive the fault.

 

 

Doug Moved to reword as Tom proposed, No second.  Motion fails for lack of a second.

 

If someone cares they should take it to the list for further discussion.

 

Doug: We still need to have the group termination issue complete.  This is a sub issue.

 

Agreed to leave open for resolution of sub issue.

5

<ter1> WSRM TC has agreed to fix unnecessary use of Soap 1.2 terminology

 

Proposed resolution, agreed at July 13 WSRM TC meeting:

 

Line 67-68: change sentence:

 

 

WS-Reliability is a SOAP Module (as defined by [SOAP 1.2]), which fulfills reliable messaging requirements that are critical in some applications of Web Services.

 

 

to:

 

 

WS-Reliability is a SOAP based specification, which fulfills reliable messaging requirements that are critical in some applications of Web Services.

 

 

Lines 166-170: change

 

 

Reliable Messaging Processor (RMP):

 

A SOAP Node (as defined by [SOAP 1.2]), or a subset or superset thereof, capable of performing Reliable Messaging as described by this specification. With regard to the transmission of a Reliable Message from one RMP to another, the former is referred to as the Sending RMP, and the latter as the Receiving RMP. An RMP may act in both roles.

 

to:

 

 

Reliable Messaging Processor (RMP):

 

A SOAP processing element, capable of performing Reliable Messaging as described by this specification. With regard to the transmission of a Reliable Message from one RMP to another, the former is referred to as the Sending RMP, and the latter as the Receiving RMP. An RMP may act in both roles.

 

<JD4> <JD> Good point, although the "node" definition in SOAP 1.2 Part 1, section 1.4.1

appears to be a general one (not depending on 1.2 specific features).

So we could use the term "SOAP processor" instead as Tom suggests, and say

that in case of SOAP 1.2, it is a SOAP node, and in case of SOAP 1.1,

it complies with similar requirements:

"...enforcing the rules that govern the exchange of SOAP messages and accesses the services provided

by the underlying protocols through SOAP bindings."

I think what we want to convey in the RMP definition is that (1) an RMP implements SOAP protocol and some underlying binding so that it can do messaging, and (2) an RMP understands RM SOAP headers.

 

</JD>

 

[C.F.]...It makes for a cleaner specification if one defines

behaviour in terms of destination and source because it is entirely

feasible that a component might implement only one of those roles. As

defined, WS-R requires that a conformant implementation of an RMP

implement both roles which would limit its applicability to certain use

cases such as small footprint devices or in cases where reliability was

only needed in one direction. Also, what is with the "a subset, or

superset thereof". What does that mean exactly?

 

<JD> I think these concerns were addressed in the latest contribution (July 7)

which is not the one Chris used.

- new section 2.2 ("RMP operations") explicitly says an RMP can be implemented

for sending, and/or receiving (lines 256-257)

- the "subset/superset" part was removed from the def.

</JD>

 

<DB4> For (5), I am not sure what you are suggesting but suspect your comments work with the proposal in Tom's "1,2,24,5,7,9,16,19" email.

 

Jacques: while the term Soap node is to soap 1.2, but we could state that this processor is a soap.

 

Agreed to leave this to the editing team to propose the proper wording in the next draft for review.

 

6

<ter2> Better definition for Reliable message

 

Proposed clarification:

 

Line 171-172: change

Reliable Message:

A message for which some level of reliable delivery is required.

to

Reliable Message:

A SOAP message carrying a wsrm:request header block.

<DB3> line 171/2 defines the term "reliable message". This seems unnecessary.

 

==> change

"Reliable Message:

A message for which some level of reliable delivery is required."

 

to

 

"Reliable Message:

A SOAP message containing a <wsr:Request> header block."

 

Note: I am comfortable with mixing such concrete definitions with the various abstract terms we use to illustrate our model.  If others would prefer our definitions have a consistent abstraction level, what do they suggest for this definition?

 

<JD4> <JD> fine with me: only the terms that refer to notions that the spec does not

want to define further (yet wants to define properties about), need be "abstract".

In the present case, this forward reference is OK (since we say that the glossary

can do forward references.)</JD>

 

No disagreement with this change.

 

Agree to use Xpath notation in this case. 

 

Agreed that Editing team will apply the proposed change to Reliable message definition using the Xpath notation.

 

7

<ter1> Message Delivery is not the end of Receiving RMP processing

 

Proposed clarification:

 

Lines 204-206: change

 

Message Delivery:

 

The action of invoking the “deliver” operation for a Reliable Message. This action marks the end of the RMP processing for this message.

 

to

 

Message Delivery:

 

The action of invoking the “deliver” operation for a Reliable Message.

 

<DB2> Actually, this does not cover the problems Chris identified with failed Deliver operations nor the explicit connection we have made between message delivery and sending an acknowledgement (when required).  I suggest:

 

"Message Delivery:

 

Completion of the Deliver operation for a Reliable Message."

 

Agreed that editing team is to apply Doug’s fix to the next editor’s draft.

 

 

8

<ter2> Definition of PollRequest message

 

Proposed clarification:

 

Lines 221-225: change

PollRequest Message:

A polling message for Acknowledgment Indication(s). A Sending RMP may send a PollRequest Message for polling of Acknowledgment Indication(s) regardless of RM-Reply Pattern of the original Reliable Message. For example, the Sending RMP may send PollRequest Message to retrieve Acknowledgment Indication for a message originally sent using Callback RM-Reply Pattern.

to

PollRequest Message:

A message sent by the Sending RMP to the Receiving RMP that requests that it respond with RM-Reply information.“

 

<DB3> line 217 [actually 221-225] defines the term "PollRequest Message" ... leave out the embellishments.

 

==> change

"PollRequest Message:

A polling message for Acknowledgment Indication(s). A Sending RMP may send a PollRequest Message for polling of Acknowledgment Indication(s) regardless of RM-Reply Pattern of the original Reliable Message. For example, the Sending RMP may send PollRequest Message to retrieve Acknowledgment Indication for a message originally sent using Callback RM-Reply Pattern."

 

to

 

"PollRequest Message:

A message the Sending RMP sends to the Receiving RMP, requesting RM-Replies for identified earlier Reliable Messages.  Support for this message is REQUIRED as part of the Poll RM-Reply pattern (see section 2.5.3).  This message MAY also be used to augment other RM-Reply patterns."

 

Doug: this is touched on by one of Jacques earlier comments, which could be taken care of later.

 

No opposition to Editing team incorporating Doug’s fix for PollRequest Message definition to the next draft.

9

<ter1> Use of the word implement with Abstract operation

 

Proposed clarification:

 

Lines 256-257: change

 

 

An RMP acting in the role of a Sending RMP MUST implement Submit, and notification of failure (Notify). An RMP acting in the role of a Receiving RMP MUST implement Deliver.

 

 

with

 

 

An RMP acting in the role of a Sending RMP MUST support use of Submit and Notify. An RMP acting in the role of a Receiving RMP MUST support use of Deliver.

 

 

<DB2> An important part of the issue here was implications around who implements what.  The phrase "support use" is not dissimilar enough to avoid these implications.  I am also unsure why we are bothering with the "acting in the role of" wordiness.  Finally, I see nothing in the specification requiring a sending RMP to use AckRequested, meaning that Notify should also be optional (for a more extreme reason, admittedly, than Respond is optional).  I suggest:

 

"A Sending RMP MUST support the Submit operation.  A Receiving RMP MUST invoke the Deliver operation for every valid, in-order and non-expired message it receives."

 

 

No opposition to editing team incorporating Doug’s proposal to replace the two sentences in next draft.

 

10

<DB3> line 265/8 reads: ... getting perilously close to implementation detail

"An RMP which supports both Submit and Notify MUST be able to associate a failure notification (Notify) with the related submitted payload(Submit). In case the notification of payload is supported, the RMP MUST be able to associate a received payload(Notify) with a previously submitted payload(Submit)."

 

==> This text or something similar was the subject of an earlier discussion in the TC which may not have completed to everyone's satisfaction.  I would prefer deleting this paragraph.  It is only an indication to the developer how to design their API were they to choose a direct rendering of the RMP component.

 

<JD4> <JD> but this is just the counterpart requirement to what we say earlier in same section

 about the need to associate a Respond invocation to a previous Deliver invocation.

We know an RMP MUST be able to do so (this is part of the semantics of Respond).

Why then is this OK while it is not OK to require also that on the Sending side,

similarly, a Notify invocation must be associated with a previous Submit invocation?

</JD>

 

<DB4>

Agreed, I focused on the particular paragraph Chris mentioned and missed the previous one.  I would therefore suggest both paragraphs should be removed.

 

Agreed to leave open for now, and to add this to the Doug and Jacques action item with the Comment 1.

 

11

<ter2> Table does not show Reply to as complex type

 

Proposed clarification:

 

Lines 758-766: change

4.2.3.2 Element: Request/ReplyPattern/ReplyTo

A Sending RMP MUST include this element for a message with “Callback” value for Value element.  The Sending RMP MUST NOT include this element for a message with “Response” or “Poll” value for Value element.  It is to specify the endpoint for the initial Sending RMP to receive a callback Acknowledgment Indication or RM Fault Indication.

 

If present, the format of ReplyTo element MUST be specified by the reference-schema attribute.  If the attribute is omitted, the default format of ReplyTo element is URI as defined in [RFC 2396].

 

                 Table 10 ReplyTo Element

        Cardinality                     1

        Value                                              String

        Attributes                      reference-schema

        Child elements                              None

 

4.2.3.2.1 Attribute: Request/ReplyPattern/ReplyTo/@reference-schema

This attribute is to specify the format or schema of the value of the the ReplyTo element. The Sending RMP MAY omit this attribute, when the value of the ReplyTo element is expressed with a value of type URI.

 “

to

4.2.3.2 Element: Request/ReplyPattern/ReplyTo

A Sending RMP MUST include this element for a message with “Callback” value for the Request/ReplyPattern/Value element.  The Sending RMP MUST NOT include this element for a message with “Response” or “Poll” value for the Request/ReplyPattern/Value element.  It is used to specify the endpoint for the initial Sending RMP to receive RM-Reply information.

 

The format of the child element of Request/ReplyPattern/ReplyTo/Ref MUST be specified by Request/ReplyPattern/ReplyTo/@reference-scheme, if the attribute is present.  If the attribute is omitted, the default format of the child element of Request/ReplyPattern/ReplyTo is URI as defined in [RFC 2396].

 

                    Table 10 ReplyTo Element

        Cardinality                     0 or 1

        Value                                              None

        Attributes                      reference-scheme

        Child elements                              {Any} (representing the reference)

 

4.2.3.2.1 Attribute: Request/ReplyPattern/ReplyTo/@reference-scheme

This attribute is to specify the format or scheme of the value of the child element of Request/ReplyPattern/ReplyTo. The Sending RMP MAY omit this attribute, when the child element of Request/ReplyPattern/ReplyTo is expressed with a value of type URI.

 

The type of this attribute is xsd:anyURI.

 

 

 

Lines 863-875  change

4.3.1 Element: PollRequest/ReplyTo

A Sending RMP MAY include this element. If present, then the Receiving RMP MUST send the RMReply information in a new request to the endpoint specified by this element. If not present, the RM-Reply MUST be sent back on the response of the Poll request itself. The format or schema of the value of this element is specified by the reference-schema attribute. If the attribute is omitted, the default format of ReplyTo element is URI as defined in [RFC 2396].

 

                   Table 15 ReplyTo Element

        Cardinality                     1

        Value                                              String

        Attributes                      reference-schema

        Child elements                              None

 

4.3.1.1 Attribute: PollRequest/ReplyTo/@reference-schema

This attribute is to specify the format or schema of the value of the ReplyTo element. The Sending RMP MAY omit this attribute, when the value of the ReplyTo element is expressed with a value of type URI.

to

4.3.1 Element: PollRequest/ReplyTo

A Sending RMP MAY include this element.  If present, the Receiving RMP MUST send the RMReply information in a new request to the endpoint specified by this element. If not present, the RM-Reply MUST be sent back on the response of the Poll request itself.

 

The format of the child element of PollRequest/ReplyTo MUST be specified by the PollRequest/ReplyTo/@reference-scheme, if the attribute is present.  If the attribute is omitted, the default format of the child element of PollRequest/ReplyTo/Ref is URI as defined in [RFC 2396].

 

                   Table 15 ReplyTo Element

        Cardinality                     0 or 1

        Value                                              None

        Attributes                      reference-schema

        Child elements                              {Any} (representing the reference)

 

4.3.1.1 Attribute: PollRequest/ReplyTo/@reference-scheme

This attribute is to specify the format or schema of the value of the child element of PollRequest/ReplyTo.  The Sending RMP MAY omit this attribute when the child element of PollRequest/ReplyTo is expressed with a value of type URI.

 

The type of this attribute is xsd:anyURI.

 

 

Tom: proposed taking this along with Anish’s proposal, to produce the next version of the document.

 

Doug:  the syntax description could be pulled out as a separate section and referenced from the two.

 

Agreed to having editing team Make a new subsection with just the common text, and refer to it in both places.

 

Agreed to apply these edits on ReplyTo specification to the next draft, along with those of Anish on Ref schema.

 

12

<ter2> Clarification of scope

 

Proposed clarification:

 

Lines 430-431: change

• If GroupExpiryTime is used for a messaging scope, then the item GroupMaxIdleTime

MUST NOT be used, and vice versa.

to

• If GroupExpiryTime is used for a group scope, then the item GroupMaxIdleTime

MUST NOT be used, and vice versa.

Jacques: Messaging Scope could be either group or message.  I would suggest to remove the word scope.  Change “group scope” to “group” in the proposal above.

 

No opposition to Jacques proposal.  Editing team to incorporate the change.

 

13

<ter2> Wording

 

Proposed clarification:

 

Lines 484-485: change

A Sending RMP that has not been able to receive an acknowledgment for a sent message, MUST notify the Payload Producer of a delivery error.

to

A Sending RMP that has not received an acknowledgment for a sent message, after applying its resend policy, MUST notify the Payload Producer of a delivery error.

 

Alan: I propose to delete this sentence, because it is an implementation matter.  We should make this part of the implementers guide.

 

Doug: I agree with Alan’s proposal.

 

Jacques: I can agree, as long as the definition of  Notify includes the delivery erro.

 

No opposition to deleting sentence.  Editing team to incorporate this change into next draft

 

14

<ter2> Implication that Sending RMP must compare payloads

 

Proposed clarification

 

Lines 507-508: change

• Two message instances that carry different payloads MUST NOT share the same Message Identifier.

to

• Message instances resulting from separate invocations of Submit MUST NOT share the same Message Identifier.

 

Jacques: the new wording is better.  But the original wording was not intended to imply comparistion

 

No opposition to change.  Editing team to incorporate into next draft

 

15

<ter2> Message is what Sending RMP deals with, not payload

 

Proposed clarification

 

Lines 509-511: change

• Two message instances that share the same Message Identifier - such as the

resending mechanism generates - MUST carry exactly the same payload(s) and the

same reliability headers.

to

• Two message instances that share the same Message Identifier (such as generated by the resending mechanism) MUST have identical reliability headers and convey the payload from the same Submit invocation.

 

Doug: This does not solve the problem that both versions would allow things to change when the message ID has not change.

 

Two message instances which share the same message Id must not be changed when resent.

 

Doug: “When resending a message with the same message ID, the message contents must not be changed.”

 

Tom: what about WSS, would it change any timestamps changing the signature on a resend.

 

Agreed to the simpler wording from Doug.  Editing team to incorporate into next draft

 

 

16

<ter1> MUST ignore extra information is too strong a constraint for a spec

 

Proposed clarification

 

Lines 601-604: change sentence

 

 

If a message contains additional elements not described in this specification, the Reliable Messaging Processor MUST ignore those elements.

 

 

to

 

 

If a message contains additional elements not described in this specification, the Reliable Messaging Processor MAY ignore those elements.

 

Doug: I agree with the MAY.

 

No opposition to this change.  Editing team to incorporate into next draft.

17

<ter2> constraints on sequence number for ordered deliver in wrong place

 

Proposed clarification:

 

Lines 669-767: Delete

If the MessageOrder element appears in the message received, the Receiving RMP MUST NOT deliver the message until all messages with the same groupId value and a lower number value have been delivered.

and add the following new paragraph after Line 793:

If the MessageOrder element appears in the message received, the Receiving RMP MUST NOT deliver the message until all messages with the same Request/MessageId/@groupId value and a lower Request/MessageId/@number value have been delivered.

Editing team to incorporate into next draft.

 

18

 

19

<ter1> definition of Payload

 

Proposed clarification

 

Lines 173-174: change

 

 

Payload:

 

Subset of message data that is intended for the consumer of the Reliable Message.

 

 

to

 

 

Payload:

 

Message data that is transferred from or to an RMP through the use of an abstract RMP operation.

 

 

Jacques: Put this with the action item of Jacques and Doug to proposed a more abstract definitions.

 

--

20

<ter2> clarification of term scope

 

Proposed clarification

 

Line 402: change “messaging scope” to “scope”

 

 

Agreed change for editing team to incorporate into next draft.

 

21

 

22

<ter2> Redundant text is not clear

 

Proposed clarification

 

Lines 496-497: remove

When the NoDuplicateDelivery agreement item is enabled, a payload submitted only once to the Sending RMP MUST NOT be delivered twice or more to the consumer party.

 

since the following paragraph states the same requirement more clearly.

 

 

Editorial team will take this into consideration and suggest an imporvement.

 

23

 

24

See comment 1)

25

 

26

 

27

<ter2> redundant text should be removed

 

Proposed clarification

 

Lines 217-218: remove

For the Callback and Poll RM-Reply Patterns, RM-Replies for multiple Reliable Messages MAY be included in a single Reliable Messaging response.

since this constraint is clearly stated in specification of Response element.

 

No opposition to this proposed change.  Editing team to incorporate into next draft

 

28

<ter2> Term “smallest scope” is unclear

 

Proposed clarification

 

Line 408: change

The smallest scope of applicability for each RM Agreement item is:

to

Agreement items applying to the Message Scope MAY be applied at the Group Scope.

 

The default scope of applicability for each RM Agreement item is:

 

Editing team to incorporate into next draft.

 

29

<ter2> redundant constraint is misleading

 

Proposed clarification

 

Lines 541-542: remove

• From one sent message to the next in the same group, the sequence number MUST

increase by one, starting with value 0.

 

since this is clearly stated in the definition of sequence number values.

 

Agreeed Editorial fix to be applied

 

30

<ter2> Exclusive Or not clear

 

Lines 666-668: change

In a request message, the sender MAY include either a @groupExpiryTime or a @groupMaxIdleDuration corresponding to the group termination parameters specified in Section 5.1.2.

to

In a request message, the sender MAY include either a @groupExpiryTime or a @groupMaxIdleDuration, but not both, corresponding to the group termination parameters specified in Section 5.1.2.

Agreed fix for editing team to apply to next draft..

 

31

 

32

 

33

 

34

 

35

 

35

 

36, 37

<ter2> Fault specs are misleading

 

Proposed clarification

 

Line 1081: change the table row

InvalidMessageId

 

This fault is sent in any of the following cases:

1. If @groupId (for MessageId or RefToMessageIds ) doesn’t exist, or if exists, and the value is wrong or invalid.

2. If number attribute in SequenceNum element doesn’t exist, or if exist, the value is invalid or wrong.

3. Attributes (from and to) of SequenceNumRange doesn’t exist, or if exists, the values are invalid or wrong.

To:

InvalidMessageId

 

This fault is sent in any of the following cases:

1. If @groupId (for MessageId or RefToMessageIds ) is not present, or is present with an invalid value.

2. If @number in SequenceNum element is not present, or is present with an invalid value.

3. Attributes (from and to) of SequenceNumRange are not present, or are present with invalid values.

 

No opposition to editorial change.  Editing team to apply to next draft.

 

37

 

38

 

39

 

40

 

41

 

42

<ter2> extensibility not described in Specification Text

 

 

Chris Ferris pointed out that the main body text which specifies the header elements does not describe the extensibility expressed in the schema.

 

In fact, the only place where extensibility is shown, which is in the figures 6 and 7, shows it incorrectly (with the any at the end).

 

Proposed clarification:

 

Lines 562, 567, and 588: remove the boxes with “any” from figures 6 and 7.

 

 

Lines 600 – 602: change

In a case where the text of the specification is shown to be in conflict with schema statements, the schema statement prevails. If a message contains additional elements not described in this specification, the Reliable Messaging Processor MUST ignore those elements.

to

In a case where the text of the specification is shown to be in conflict with schema statements, the schema statement prevails.

 

The schema for some of the elements specified in this section includes specification of extensibility elements and attributes.  The extensibility features expressed formally in the schema are specified in section 4.6.

 

If a message contains additional elements or attributes not described in this specification, the Reliable Messaging Processor MAY ignore them.

 

 

Line 1128:  add new section 4.6

4.6 Extensibility features of Schema

 

The schema namespace with prefix wsrm, which is part of this specification, specifies extension mechanisms for some schema elements.

 

The following elements, which have a complex sequence type, are specified in the schema to allow the presence one or more extension elements, of type xsd:any, at the beginning of the sequence, as well as one or more extension attributes:

* Request

* Response

* PollRequest

* NonSequenceReply

* SequenceReplies

* ReplyRange

 

 

No opposition to incorporating this change.  Sunil will review to see if there are others.  Editing team to incorporate into next draft

 

 

 

 

 

5.4      Comments from Doug Bunting

·  drb comments on 1.05
From Doug Bunting <Doug.Bunting@Sun.COM> on
13 Jul 2004 05:08:42 -0000

 

As amended in Minutes of 7/13 meeting.

 

2

        line 10

        editorial

        Is Iwasa really the only editor?

        Add at least Sunil and Jacques, who contributed mucho editing time.

Let Jacques, Sunil and Iwasa Discuss this together.

 

Resolved by having a new editing group, in the final document everyone in the group will be listed.

 

3

        line 17

        editorial

        A committee draft is a static indication of the TC's view at a particular time.  Once the document is anything other than a working draft, this line is incorrect and inappropriate.

        Delete this line.

Agreed fix for editing team to apply.

 

4

        lines 25-26

        editorial

        Have we created a blank errata sheet or do we have a plan to do so?  If not, these lines should say something about "when available".

        Change "The errata page for this specification is at" to "If necessary, the errata page for this version of the specification will be located at" and confirm this location is under TC control.

Agreed fix for editing team to apply.

 

5

        line 67

        minor technical

        WS-Reliability is a number of SOAP modules, not just one.  It also seems very odd to describe a protocol with specific message exchanges added to the application interaction (producer / consumer interface in our terms) simply in terms of the syntax added.  Finally, as Chris also mentioned in his initial comment 5, this reliance on SOAP 1.2 terminology implies a SOAP 1.1 -only implemenatation is not conformant.

        Remove "is a SOAP Module (as defined by [SOAP 1.2]), which"

 

Joe C: how about SOAP based capability

 

Jeff: “is a SOAP based specification, which”

 

General agreement on Jeff’s proposal as the proper resolution.

 

 

Agreed fix for editing team to apply.

 

 

6

        lines 78, 81

        editorial

        "Under this aspect" adds nothing to either of these points.

        Remove these phrases.

Agreed fix for editing team to apply.

 

7

        lines 105-106

        editorial

        "On the sending side, like on the receiving side" adds nothing.

        Delete this phrase.

Agreed fix for editing team to apply.

 

8

        lines 117-119

        editorial?

        Bullet about "application level synchronous messaging" has never made sense.  The bizarre semi-clarification in bullet conflicts with the value duplicate elimination might add if the producer (in our terms) wants to repeat messages until it gets the response it expects.

        Delete this bullet.

Agreed fix for editing team to apply.

 

9

        Table 2

        minor technical

        Our specification is supposedly useful for both SOAP 1.2 and 1.1.  If we need a namespace prefix only for SOAP 1.1, something is very wrong in our specification.

        Add some SOAP 1.2 examples and define namespace prefix for that namespace here.

 

Doug: We do not define a prefix for Soap 1.1.  We never use soap 1.2 in the examples.

Doug: one soap 1.2 example would fix this.

 

Ø Action: Editing team to propose fix Doug B comment 9.

 

10

        Section 1.3

        editorial

        This "conventions" section seems the appropriate place to describe what in the document is normative.  Normative is not mentioned until page 41 at the moment!    Are examples and notes normative, for example?  Are the examples without "(Normative)" in the subject non-normative?  Is the associated schema normative (see lines 600-602)?

        Describe what in the document is normative.

 

This is a question of writing it down in the spec.  Members should proposed text to clarify what is normative in the spec.

 

Doug: this is part of the issue that Mark mentioned on line 835.  We have a number of places where we personify elements and make required statements on their behaviour.

 

After the next draft, all members should provide comments on this point.

 

6         Discussion of Kavi Ballot for CD 1.05

 

http://www.oasis-open.org/apps/org/workgroup/wsrm/download.php/7751/WS-Reliability-ED105.zip

 

Passed the Kavi Ballot to become CD 1.05.

 

All voting members voted yes.

 

Ø Action: Tom Rutt to update cover page as CD 1.05 and place Zip file on server in Drafts folder.

 

7         Discussion of Document Progression and future meeting schedule.

Tom: can the editors apply the edits we have agreed to today by the close of business of next Monday.

 

Action: editing time to apply agreed edits from today’s minutes by the end of next Monday.

 

 

Proposals for remaining action items should be posted to the list by next Monday.

 

Action: tom will post an Action item list with remaining  technical items as explicit action items.

 

At this point we can keep the targets for a next CD ballot on Aug 3, with fallback to Kavi ballot initated on Aug 3 (if not Quorate).

 

Alan : we need to continue to plan the Implementor’s guide work after the spec is completed.

 

Alan moved to adjourn, Jacques seconded.

 

Meeting adjourned.



[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]