Modified Files:
Utility.py -- added a CollectionNS class that keys items via
(targetNamespace, name).
WSDLTools.py --
Made WSDL Collections into CollectionNS instances,
this fixes problem with collisions, caused by wsdl:imports,
between items with same name but defined in different
targetNamespaces. So now all items can be accessed via
(namespace,name), but ONLY those items defined in
WSDL.targetNamepsace (not an import.targetNamespace) can
be accessed using just 'name'.
Also changed how portType is "loaded". Now instead of
dropping all the operation nodes in "load", I drop
the portType node into "load". This makes sense because
portType really should know about itself, and the
XML Schema definition of "portType" includes an "anyAttribute"
and I need to make this stuff available. I may change the
other WSDL information items to do this to be consistent.
----------------------------------------------------------------------
Modified Files:
Utility.py -- fixed bug in _clone_node patch. This method
was being called with qualifiedName for namespaced attributes,
and bombing. It is supposed to be called like so:
getAttributeNodeNS(self, namespaceURI, localName)
Really could remove the if/else clause here but I
decided to leave it there just to keep the 3 distinctions
in the code.
----------------------------------------------------------------------
Modified Files:
Utility.py
WSDLTools.py
XMLSchema.py
-- Fixed [ 810251 ] default method broken in wstools.Utility.Collection
-- Also fixed problem with includes Collection key, and changed
Types(Collection) class to declare a different default key instead
of redefining several methods.
----------------------------------------------------------------------
Modified Files:
Utility.py -- Added a parameter to Collection class constructor,
'name' is the default attribute used for keys but one
can specify whatever key they want.
XMLSchema.py -- Used the above parameter to make Collection
instances use the appropriate 'attribute' as key.
----------------------------------------------------------------------
I fixed that fact that Notation and Entity were not be found. I changed them
to use the qualified name like the rest of the symbols from xml.dom.minidom.
I also discovered that a RecursionError was being thrown, but RecursionError
didn't exist. I created simple sub-class of Exception to rectify this.