Modified Files:
XMLSchema.py -- fixed XMLSchemaComponent.setAttributes, added
the needed getNamespace method to all DOMAdapters. All
changes are related to XML attribute handling.
----------------------------------------------------------------------
Modified Files:
XMLSchema.py -- Modified/Extended some of the element classes.
For LocalElementDeclaration inheritance was duplicitous,
and for ElementReference it was wrong.
----------------------------------------------------------------------
Modified Files:
XMLSchema.py -- Fixed a few bugs, a few classes mistakenly thought
they contained global attribute declarations and I fixed this
to local attribute declarations. Couple spots where
AttributeGroup declarations and references were incorreclty
used in place of eachother. Completed a few classes but
a few remain incomplete.
----------------------------------------------------------------------
Modified Files:
XMLSchema.py -- Namespaced a couple attributes in attribute
dictionary that I missed.
----------------------------------------------------------------------
Modified Files:
XMLSchema.py -- there was a indexing logic error in Restriction/Extention
classes fromDom method. Also changed the attribute dictionary of all
classes that inherit XMLSchemaComponent, now all attributes
are organized by namespace.
----------------------------------------------------------------------
Modified Files:
XMLSchema.py --
Wasn't resolving schema imports in every scenario.
Now look in parent schema imported_schemas first, second look
in the parent wsdl, lastly try to resolve schemaLocation.
Removed 'what' parameter from marker interface methods, I don't
know what it was doing there. Check self.
----------------------------------------------------------------------
Modified Files:
XMLSchema.py -- changed getQNameAttribute to return None if it
can't find QName obj in it's own tns or in any of its
imported namespaces. Used to throw an exception.
----------------------------------------------------------------------
Modified Files:
XMLSchema.py -- fixed some default attribute handling, added a
few get methods in XMLSchema for elementFormDefault,
attributeFormDefault, blockDefault, finalDefault. Also
added a global method GetSchema. Now default attributes
are set correctly in all schema components.
----------------------------------------------------------------------
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.
----------------------------------------------------------------------
WSDLTools.py -- just a few minor changes so the new schema class
will be used instead of the schema tns placeholder.
Might want to add an argument to WSDL.load method so that
programmer can specify the placeholder or actual
implementation.
XMLSchema.py -- mostly new, unused original code is commented out at the bottom.
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.
XMLSchema.py
----------------------------------------------------------------------
fixed an obvious bug, added a SchemaError class so it can actually
be thrown.
----------------------------------------------------------------------
commit a little while ago. :) That is, wstools is now independant
of SOAPpy and ZSI. This commit does the following:
wstools/ServiceProxy.py is now ZSI/ServiceProxy.py, so some
imports and ZSI docs had to change.
ZSI needs some changing, in case I didn't patch up all the imports
right.
(which doesn't), so that SOAPpy can use wstools without needing ZSI
around... which is kinda the point of generic common-code. :)
class SOAPCallInfo:
class ParameterInfo:
class HeaderInfo(ParameterInfo):
def callInfoFromWSDL(port, name):
Next step is to move what's left of wstools/ServiceProxy.py into the ZSI
module (and fix up the imports), so that wstools has *no* soap-stack-specific
code in it.