W3C home > Mailing lists > Public > public-ws-addressing@w3.org > June 2005

Re: on LC75

From: Tom Rutt <tom@coastin.com>
Date: Sun, 05 Jun 2005 17:22:00 +0200
Message-ID: <42A31898.7080003@coastin.com>
To: tom@coastin.com
CC: Rich Salz <rsalz@datapower.com>, Marc Hadley <Marc.Hadley@Sun.COM>, "public-ws-addressing@w3.org" <public-ws-addressing@w3.org>

If we decide we an extensible messageId strucutre (which I do not see as 
required) we could change the schema to someting like the following , 
using an attribute for mandatory globalID, on an extensbile sequence

   <xs:complexType name="MessageIdType2">
        <xs:sequence>
            <xs:element name="Index" type="xs:unsignedLong" minOccurs="0"/>
            <xsd:any namespace="##other" processContents="lax" 
minOccurs="0" maxOccurs="unbounded"/>
        </xs:sequence>
        <xs:attribute name="globalId" type="xs:anyURI" use="required"/>
    </xs:complexType>


Tom Rutt wrote:

>
>
>
> Rich Salz wrote:
>
>>> If we go this route I'd like to suggest we also add an optional
>>> timestamp field. I've had several requests for WS-addressing to offer
>>> support for such a thing separate from the message id itself.
>>>   
>>
>>
>> Can we point to wsu:Timestamp from OASIS WS-Security?
>>  
>>
> I had thought about this kind of extensibility, and one option would 
> be to make the messageId complex type extensible in some way.
>
> Before we get carried away, however, I think we should consider 
> keeping the messageId type just having semantics of identity.
> WS-Reliability has a messageId complex type which has other 
> information carried beyond idenity (e.g., first message insequence, 
> last message in sequence), which was done for "efficiency" purposes.  
> However, this extra information is not necessary for the uniqueness
> of identity.
>
> One reason to have a message id which has a globalId with an integer 
> index is for scalability purposes.  For examle, an endpoint could 
> obtain its globalID URI at bootup time, using an integer counter of 
> messages sent as the index.  This avoids generating a new globalID for 
> each mesage, while keeping the messageId globally unique for each 
> message sent.
>
> Another reaons for an integer index is to enabline ordering of ids.  
> Both WS reliability and WS- Reliable messaging use the pair as their 
> identity.  They both also add semantics of sequence to the messageID 
> (i.e., they specify that the index must increase by one each time a 
> new message is sent, and that the global ID represents a particular 
> messageSequence)  This sequence ID can be used for
> control opeations pertainig to that sequence (eg. to terminate it).
>
> .
>
> However, in some cases the sequentiality might not be required.  Thus 
> ws-addressing does not need to include the ordering
> semantics for the integer index .
>
> Now adding a timestamp is going beyond identity, and, for orthoganlity 
> purposes, might be better to put somewhere else other than in the 
> MessageId structure.
>
> If we do not need extensibility, then  ws addressing can have a 
> message ID structure as follows (which is backwards compatible with 
> the last call messageId syntax):
>
>
>    </xs:complexType><xs:complexType name="MessageIdType3">
>        <xs:simpleContent>
>            <xs:extension base="xs:anyURI">
>                <xs:attribute name="index" type="xs:unsignedLong" 
> use="optional"/>
>            </xs:extension>
>        </xs:simpleContent>
>    </xs:complexType>
>
>
> Tom Rutt
>
>>     /r$
>>
>>  
>>
>

-- 
----------------------------------------------------
Tom Rutt	email: tom@coastin.com; trutt@us.fujitsu.com
Tel: +1 732 801 5744          Fax: +1 732 774 5133
Received on Sunday, 5 June 2005 15:24:09 GMT

This archive was generated by hypermail 2.2.0+W3C-0.50 : Tuesday, 2 June 2009 18:35:05 GMT