Bottom line? don't throw an error with the wsrf wsdl. right?

-- dims

On 8/24/05, Sanjiva Weerawarana <[EMAIL PROTECTED]> wrote:
> On Wed, 2005-08-24 at 09:19 -0400, Glen Daniels wrote:
> > Dims, you can only do that if WSDL says that's what you do (otherwise
> > it's not interoperable, or correct according to schema).
> >
> > I don't see the problem Sanjiva is worried about, though.  If the
> > elements are unqualified, then the references are simply unqualified as
> > well... <input element="foo"/> instead of <input element="ns:foo"/> -
> > what's the big deal?
> 
> The rules for resolving qualified *values* that WSDL 1.1 assumed came
> from XSLT, not from WSDL. (See http://www.w3.org/TR/xslt#qname.) So
> while you're correct about how one could interpret
> element="foo" (because XSDL explicitly states that default NS doesn't
> apply), it was not the intent of WSDL 1.1 that unqualified names would
> be used as values of @element and @type. Furthermore, WSDL 1.1, does not
> specify or imply the behavior you propose.
> 
> For those of you who care about the WS-I Basic Profile, it clarifies
> this issue too:
> 
> http://www.ws-i.org/Profiles/BasicProfile-1.0-2004-04-16.html#refinement16552904
> 
> However, the solution they advocate (which is what the WS-RF schema
> uses) is actually incorrect w.r.t. XSD IMO .. the EIIs and AIIs defined
> in the schema which is imported inside another schema are not visible
> outside of the enclosing schema. So in other words, WSDL would not be
> able to see them. WS-I BP gets around that by defining its own rules ..
> but technically that's not correct.
> 
> Anyway, I take back my previous comment: this *specific style of XSDs*
> (per the WS-I BP clarification) should be supported as a special case.
> The style being of course:
>         <xsd:schema>
>                 <xsd:import namespace=".." location=".."/>
>         </xsd:schema>
> This is analogous to what we allow in WSDL 2.0 by allowing xsd:import
> directly as a child of wsdl:types.
> 
> We clarified this whole issue in WSDL 2.0 after lots of thought. See:
>         http://www.w3.org/TR/2005/WD-wsdl20-20050803/#xsd-types
> 
> There we say (in 3.1.1.1):
> 
> "The namespace attribute information item defines the namespace of the
> element declarations and type definitions imported from the referenced
> schema. The referenced schema MUST contain a targetNamespace attribute
> information item on its xs:schema element information item and the
> values of these two attribute information items MUST be identical. It is
> an error to import a schema that does not have a targetNamespace
> attribute information item on its xs:schema element information item.
> Such schemas must first be included (using xs:include ) in a schema that
> contains a targetNamespace attribute information item on its xs:schema
> element information item, which can then be either imported or inlined
> in the WSDL 2.0 document."
> 
> ===
> 
> In WSDL 1.1, the trick we used was to say you can use WSDL 1.1's
> <import> element to import XSDs. (See Section 2.1.2 of
> http://www.w3.org/TR/wsdl.) So the right way to do the above would've
> been to write:
>         <wsdl:definitions ...>
> 
>                 <wsdl:import namespace=".." location=".."/>
>                 ..
>         </wsdl:definitions>
> 
> The WSDL processor was responsible for sniffing the stuff at the
> location URI and figuring out whether to import it as XSD or as WSDL (or
> some other type system .. in the WSIF context people have used it to
> import weirdities like COBOL copy books ;-)).
> 
> However, WS-I BP folks, in their infinite wisdom, felt this was no good
> and declared this illegal:
> 
> http://www.ws-i.org/Profiles/BasicProfile-1.0-2004-04-16.html#refinement16498504
> 
> (It baffles me how WS-I BP folks felt they could re-write the WSDL 1.1's
> recommended authoring style (http://www.w3.org/TR/wsdl#_style) but
> that's what they did. Oh well.)
> 
> Sanjiva.
> 
> 
> 


-- 
Davanum Srinivas : http://wso2.com/ - Oxygenating The Web Service Platform

Reply via email to