Thank you very much for the quick answer.

Please see my inline comments.

--- David Illsley <[EMAIL PROTECTED]> wrote: 
> > According to http://www.w3.org/2005/08/addressing 
> > schema, it can be any value.
> 
> That's not entirely correct, the definition is broad but 
> there are some  requirements. The specification text 
> requires [message id] be a valid absolute IRI while the 
> schema requires an xs:anyURI
You seem right. But, I was able to put any text in any 
size into xs:anyURI qualified field. You can test it 
with the following schema and instance.

------------------------------------------------------------
anyURITest.xsd
------------------------------------------------------------
<?xml version="1.0" encoding="UTF-8"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"; 
  xmlns:wsa="http://www.w3.org/2005/08/addressing"; 
  elementFormDefault="qualified" attributeFormDefault="unqualified">

  <xs:import 
    namespace="http://www.w3.org/2005/08/addressing"; 
    schemaLocation="http://www.w3.org/2005/08/addressing/ws-addr.xsd"/>

  <xs:element name="URITest">
    <xs:complexType>
      <xs:sequence>
        <xs:element name="xsAnyURI" type="xs:anyURI"/>
        <xs:element name="wsaAttributedURIType"
type="wsa:AttributedURIType"/>
        <xs:element ref="wsa:MessageID"/>
      </xs:sequence>
    </xs:complexType>
  </xs:element>

</xs:schema>

------------------------------------------------------------
Xml instance which is valid against the anyURITest.xsd
------------------------------------------------------------
<?xml version="1.0" encoding="UTF-8"?>
<URITest xmlns:wsa="http://www.w3.org/2005/08/addressing"; 
  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"; 
  xsi:noNamespaceSchemaLocation="anyURITest.xsd">
  <xsAnyURI>abc 123 4as   arw4343 -?;,[EMAIL PROTECTED] $</xsAnyURI>
  <wsaAttributedURIType>abc 123 4as   arw4343 -?;,[EMAIL PROTECTED]
$</wsaAttributedURIType>
  <wsa:MessageID>abc 123 4as   arw4343 -?;,[EMAIL PROTECTED] $</wsa:MessageID>
</URITest>

 
> <snip>
> > 
> > 1) I need to write MessageID value to the database and 
> > therefore need to know exact size and format of it. 
> > Is there a *sender neutral* way of this?
> 
> No. All you can know is that a conformant message id is an IRI
If I'm not missing something, according to the my previous 
comment, IRI can be *anything*.

> > 
> > 2) Although http://www.w3.org/2005/08/addressing schema 
> > does not mandate for a special format, does Axis2 expect 
> > a special pattern?
> 
> The spec requires an IRI so if it did expect something 
> I'd be more than a little surprised given the interop 
> results.
Is there any interop test that sets MessageID to the
nonconformant IRI value? I mean, if someone has sent
a value like "abc 123 4as   arw4343 -?;,[EMAIL PROTECTED] $" ?
(I'm going to try it with Axis2 :-)
 
> > 3) Must I make sure that I can safely write MessageID 
> > without contradicting database schema constraints, 
> > if it has passed through Axis2?
> 
> A quick look at the code suggests no :-( I can't see 
> any validation of the  MessageID e.g. that it is 
> actually a valid URI/IRI
> 
> Hope this helps,
> David
Thanks again.

Ali Sadik Kumlali

__________________________________________________
Do You Yahoo!?
Tired of spam?  Yahoo! Mail has the best spam protection around 
http://mail.yahoo.com 

Reply via email to