Anne
At 11:35 AM 9/26/2003 -0500, you wrote:
I have a few followup questions about this.
1) What is the preferred way to do this? Is it preferred to use elementFormDefault="qualified" or not? Is there anything mentioned about this in ws-i or any other spec that tries to standardize web services?
2) So if elementFormDefault="qualified" is not set and the element is a child of the schema root then it should use the targetNnamespace? Otherwise if it is a local element it should not. If elementFormDefault="qualified" is set then all should use the targetNamespace. Just to make sure.
Thanks,
Chris
> -----Original Message----- > From: Anne Thomas Manes [mailto:[EMAIL PROTECTED] > Sent: Thursday, September 25, 2003 8:54 PM > To: [EMAIL PROTECTED] > Subject: Re: namespace question > > > Per your schema, the element <text> is a local element, which > means that it > should not be namespace qualified. Hence Axis does produce an accurate > realization of your element. Since the <operation> has a default > namespace, > you must use xmlns="" to turn off the default namespace. > > If you added elementFormDefault="qualified" to your <schema> > element, then > all of your local elements would also have qualified names, in which case > they would inherit their namespace from their parent element. > > Anne > > At 05:20 PM 9/25/2003 -0500, you wrote: > >Hello, > > > >I have a question about namespaces while using document style > web service... > > > >Say I have a method defined by the schema... > > > ><schema > > targetNamespace="http://www.domain.com/namespace" > > xmlns="http://www.w3.org/2001/XMLSchema"> > > <element name="operation"> > > <complexType> > > <sequence> > > <element maxOccurs="1" name="text" type="xsd:string"/> > > </sequence> > > </complexType> > > </element> > >... > ></schema> > > > >It appears that the code that is generated by WSDL2Java > generates a message > >that would look something like this... > > > ><operation xmlns="http://www.domain.com/namespace"> > > <text xmlns=""> > > blah > > </text> > ></operation> > > > >Why does this add xmlns="" to the text element? Should this not > be there so > >that the top level namespace persists? > > > >I want to know this because I am of the opinion that the namespace should > >persist to the elements defined inside the element and you > should be able to > >check against the namespace of these elements on the server. With the > >client adding xmlns="", the namespace is null and I can't check > against the > >namespace. Is it acceptable for the namespace to be null or the > namespace > >defined by targetNamespace? > > > >Thanks for any help, > > > >Chris >