[Date Prev]
| [Thread Prev]
| [Thread Next]
| [Date Next]
--
[Date Index]
| [Thread Index]
RE: [xml-dev] xmlns empty string
- From: "Michael Kay" <mike@saxonica.com>
- To: "'Ran'" <ran256@gmail.com>
- Date: Wed, 20 Dec 2006 18:07:27 -0000
No, it's got nothing to do with the choice of prefix. It's
the namespace that matters, not the prefix. elementFormDefault="unqualified"
means the element will not be in a namespace, and will therefore have no
prefix.
I forget how chameleon namespaces interact with
elementFormDefault - it's a facility I never use, so I would have to look it
up.
Michael Kay
> means that you
want locally-declared elements like contact to be in no namespace.
Doesn't 'unqualified element form' specifies wether
or not an element use explicit ns prefix ?
qualified :
<ns:Contact
/>
unqualified:
<Contact />
Can the <Contact />
element take the Chameleon namespace from its parent element ? for
instance:
<Contacts xmlns="aa">
<Contact
/>
</Contacts>
Thanks,
ran
On 12/20/06, Michael
Kay <mike@saxonica.com>
wrote:
elementFormDefault="unqualified"
means
that you want locally-declared elements like contact to be in no namespace.
Whatever tool it was that generated the instance document has honoured that
request. It's almost always more appropriate to use
elementFormDefault="qualified".
Michael
Kay
Thanks for the reply.
I believe I specified Contact's ns
in schema as targetNamespace. Here is my
wsdl:type
<wsdl:types>
<xsd:schema
xmlns:tns="
http://web.com/CRMUsers/types/test"
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns="
http://web.com/CRMUsers"
attributeFormDefault="unqualified"
elementFormDefault="unqualified"
targetNamespace="
http://web.com/CRMUsers/types/test">
<xsd:include
schemaLocation="xsd0.xsd" />
<xsd:complexType name="ContactReturnType
">
<xsd:sequence>
<xsd:element
name="contact" nillable="true"
type="r:ContactType" />
</xsd:sequence>
</xsd:complexType>
<xsd:element name=" contacts"
nillable="true"
type="r:ContactReturnType"
/>
...
</xsd:schema>
</wsdl:types>
<!-- xsd0.xsd -->
<xsd:schema
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
attributeFormDefault="unqualified"
elementFormDefault="unqualified">
<xsd:complexType name=" ContactType">
<xsd:attribute name="id" type="xsd:string"
/>
<xsd:attribute
name="firstName" type="xsd:string" />
<xsd:attribute name="lastName" type="xsd:string"
/>
<xsd:attribute
name="email" type="xsd:string" />
</xsd:complexType>
</xsd:schema>
On 12/19/06, Andrew
Welch <andrew.j.welch@gmail.com> wrote:
On
12/19/06, Ran <ran256@gmail.com>
wrote:
> Hi,
>
> I have the following schema instance
and the xmlns on contact nodes are
> empty strings.
> I use
xmlbeans for databinding in Axis2. and would like to not use any ns on
> contact.
>
> How do I manupulate xmlns in my schema
(or using xbean api) for contact node
> to get rid of xmlns=""
?
>
> <Contacts xmlns="
www.example.com">
> <Contact
xmlns="" id="3" name="abc2"
/>
> <Contact xmlns=""
id="4" name="abc3"
/>
> <Contact xmlns=""
id="5" name="abc4" />
> ....
>
</Contacts>
Put the <Contact> elements in the "www.example.com"
namespace -
currently they are in no namespace, hence the xmlns=""
cheers
andrew
[Date Prev]
| [Thread Prev]
| [Thread Next]
| [Date Next]
--
[Date Index]
| [Thread Index]