You are viewing a plain text version of this content. The canonical link for it is here.
Posted to java-dev@axis.apache.org by bu...@apache.org on 2002/12/06 00:45:18 UTC
DO NOT REPLY [Bug 15124] New: -
xs:include namespace handling is broken
DO NOT REPLY TO THIS EMAIL, BUT PLEASE POST YOUR BUG
RELATED COMMENTS THROUGH THE WEB INTERFACE AVAILABLE AT
<http://nagoya.apache.org/bugzilla/show_bug.cgi?id=15124>.
ANY REPLY MADE TO THIS MESSAGE WILL NOT BE COLLECTED AND
INSERTED IN THE BUG DATABASE.
http://nagoya.apache.org/bugzilla/show_bug.cgi?id=15124
xs:include namespace handling is broken
Summary: xs:include namespace handling is broken
Product: Axis
Version: 1.1beta
Platform: All
OS/Version: All
Status: NEW
Severity: Major
Priority: Other
Component: WSDL processing
AssignedTo: axis-dev@xml.apache.org
ReportedBy: Eric.D.Friedman@wellsfargo.com
Given an XML schema file which defines a targetNamespace and which xs:includes a
second schema file, which does not define a targetNamespace (because its types
are supposed to be registered in the namespace of the including schema), Axis
will not get the namespace right for types/elements in the included file.
The reason, AFAICT, is that the SymbolTable class' algorithm for finding
namespaces is to search the DOM by parent elements to find the targetNamespace
definition. This is insufficient because the targetNamespace is in another DOM
-- the one that was created by reading the file with the <xs:include>, and
there's no way to reach attributes in that DOM from the DOM of the xs:included file.
I suspect that it will be necessary to add an additional parameter to the
various methods that recursively add types to the symbol table. This would bear
the targetNamespace of any xs:including file and be used as a fallback when no
targetNS can be found by walking the current DOM.