users@jax-rpc.java.net

Problem with declaration of xml namespace

From: John Colgrave <colgrave_at_hursley.ibm.com>
Date: Fri, 30 Jan 2004 12:13:12 -0000

I have tried issuing a call to a UDDI V3 registry using the code I have
generated from my modified UDDI WSDL and schemas and I have a problem with
the handling of the xml namespace in the result I get back.

The result of the call includes elements such as

<name xml:lang="en"
xmlns:xml=http://www.w3.org/XML/1998/namespace>MyBusiness</name>

I get the following error:
deserialization error: XML parsing error:
com.sun.xml.rpc.sp.ParseException:7:com.sun.xml.rpc.sp/Illegal Namespace
prefix: xml

There seems to have been a lot of confusion about such declarations of the
xml namespace in the past, but the "Namespaces in XML Errata, 6 December
2002" [1] includes the following two relevant items:

1) The Namespace Constraint "Leading XML" in section 2 is replaced with the
Namespace Constraint "Reserved Prefixes and Namespace Names" and the first
two sentences of this new Namespace Constraint are:

"The prefix xml is by definition bound to the namespace name
http://www.w3.org/XML/1998/namespace. It may, but need not, be declared,
and must not be bound to any other namespace name."

2) The first paragraph of section 5.1 is changed to read:

"A namespace declaration is considered to apply to the element where it is
specified and its attributes, and to all elements and their attributes
within the content of that element, unless overridden by another namespace
declaration with the same NSAttName part."

Given these two errata, I think the element returned by the UDDI registry is
valid and it is a bug that the SI thinks it is an illegal namespace prefix.
The SI should not expect the xml namespace to be declared, and should accept
an explicit declaration of it as long as the namespace name is correct.

[1] http://www.w3.org/XML/xml-names-19990114-errata

John Colgrave
IBM




---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe_at_jax-rpc.dev.java.net
For additional commands, e-mail: users-help_at_jax-rpc.dev.java.net