Modified Files:
ZSI/wstools/XMLSchema.py -- fixed a few syntax errors in Restriction class,
and removed "self.facets" in ComplexType which was never used?
----------------------------------------------------------------------
For cookies, getheaders() is Python 2.3; use getallmatchingheaders
In SoapWriter, put nsdecls on body, not envelope
Record facets (restrictions) in XMLSchema.py <vchen@datapower.com>
Remove Send()'s kwargs out of _args list <efrain@bogotron.net>
Modified Files:
XMLSchema.py -- added a method for grabbing a schema item
with a (namespace, name) directly rather than via an
XML attribute.
----------------------------------------------------------------------
Modified Files:
XMLSchema.py -- added couple convenience methods, for grabbing
things like boolean values and resolving qnames for attributes.
----------------------------------------------------------------------
Modified Files:
Namespaces.py
-- added some new WSRF namespaces.
WSDLTools.py
-- look for resourceProperties in all relevant namespaces.
XMLSchema.py
-- added 1 convenience method.
----------------------------------------------------------------------
Modified Files:
Utility.py
-- created a new func "basejoin" for python2.3, because python2.3
and python2.4 have different implementations(python2.3 is broke in
it's handling of current directory ./ ).
WSDLTools.py
-- fixed problem with wsdl:imports in WSDLTools.load, need to
_import all <wsdl:import>'s then check again if any <wsdl:import>'s
were added to main document and do again and again. Also fixed
problem with assigning base locations to these <wsdl:import>'s.
-- Remove all <wsdl:import>'s after they have been processed, or
deemed to be redundant.
-- grab basejoin from wstools.Utility
XMLSchema.py
-- grab basejoin from wstools.Utility
----------------------------------------------------------------------
Modified Files:
XMLSchema.py -- added the item trace to an exception thrown
when an unexpected child is encountered in complexType.fromDom
method so one can see where the problem is occuring.
----------------------------------------------------------------------
Modified Files:
XMLSchema.py -- added a couple convenience methods for grabbing
various Schema Items.
----------------------------------------------------------------------
Modified Files:
WSDLTools.py
-- removed a line that was screwing up imports/includes of
when WSDL file was specified to "wsdl2py" via a relative path.
XMLSchema.py
-- stop requiring suffix "xsd" for schema files.
----------------------------------------------------------------------
Modified Files:
XMLSchema.py -- added a couple helper methods for discovering
whether or not an element should be qualified.
----------------------------------------------------------------------
Modified Files:
Namespaces.py
-- Added a SOAP-1.2 binding
WSDLTools.py
-- Added some methods from grabbing ElementDeclaration and
TypeDefintion from Message instances.
XMLSchema.py
-- fixed a bug in SchemaReader.
logging.py
-- added a couple more functions, and a level to basic logger.
----------------------------------------------------------------------
Modified Files:
Utility.py -- catch any exceptions thrown when a DOM is loaded up,
throw a ParseError with old ex.args and inform which file
caused the problem.
XMLSchema.py -- For attributeGroup incorrectly adding global
attribute declarations, but these are declared locally.
----------------------------------------------------------------------
Modified Files:
WSDLTools.py
XMLSchema.py
--removed some print statements I left behind.
----------------------------------------------------------------------
Modified Files:
WSDLTools.py
-- resolution of default WS-Action was incorrect when using
imported portTypes.
XMLSchema.py
-- added a couple helper functions, and a few more Markers
for introspecting modelGroups and simpleType derivations.
----------------------------------------------------------------------
Modified Files:
XMLSchema.py -- Shouldn't check attributes for WSDL definition
since it's legal to specify <any> attribute in <definition>
----------------------------------------------------------------------
Modified Files:
XMLSchema.py -- required another condition in getItemTrace,
need to check if at <xsd:schema> or <wsdl:definition>,
also added some info to SchemaError throw in checkAttributes.
Now provides namespace/attribute and the Schema Item containing
the offending attribute.
----------------------------------------------------------------------
~
Modified Files:
XMLSchema.py
-- added a few convience methods, and 'disabled' a few methods
to force a sane usage.
__init__.py
-- removed use of python logging module, and replaced it with
the below.
Added Files:
logging.py
-- simple interface to log message to, can write your own
logger class. By default do no logging.
----------------------------------------------------------------------
Modified Files:
XMLSchema.py -- added some code to generate user interpretable
exceptions.
BEFORE:
File "/System/Library/Frameworks/Python.framework/Versions/2.3/lib/python2.3/site-packages/ZSI/wstools/Utility.py", line 600, in __getitem__
return self.data[key]
KeyError: u'xtvd'
AFTER:
File "/System/Library/Frameworks/Python.framework/Versions/2.3/lib/python2.3/site-packages/ZSI/wstools/XMLSchema.py", line 465, in getQNameAttribute
raise KeyError, "targetNamespace(%s) collection(%s) has no item(%s)"\
KeyError: u'targetNamespace(urn:TMSWebServices) collection(types) has no item(xtvd)'
----------------------------------------------------------------------
Modified Files:
Utility.py
XMLSchema.py -- just moved SplitQName out of here and into Utility
Added Files:
Namespaces.py -- WSDL, SOAP, SCHEMA, XMLNS namespaces here. Doesn't
require PyXml
----------------------------------------------------------------------
Modified Files:
XMLSchema.py -- fixed a few problem with the XML namespace, mainly
affecting the use of 'xml:lang'. Fixed a bug identifying
attributeGroup references vs. definitions. Also changed the
inheritance of MarkerInterface, and moved the classes involved
before all Schema classes.
Now will parse "XML Schema Part 1: Structures", and
"XML Schema Part 2: Datatypes" XML Schema definitions.
----------------------------------------------------------------------
Modified Files:
XMLSchema.py -- added substutionGroup to the list of attributes
that can be specified in an ElementDeclaration.
----------------------------------------------------------------------
Modified Files:
XMLSchema.py -- If a schema needs to 'create' a schema instance
itself it adds this schema to its import dictionary.
----------------------------------------------------------------------
Modified Files:
XMLSchema.py -- error in Import class for accessing a schemaLocation.
This bug would only show up if a schema had to 'construct' a
schema instance of a different namespace itself. Basically the
last option.
----------------------------------------------------------------------
Modified Files:
XMLSchema.py -- fixed an unknown bug caused by overlooking
the potential namespace contents of a "types" node.
----------------------------------------------------------------------
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:
WSDLTools.py
XMLSchema.py
-- Fixed [ 808505 ] ZSI fails with <xs:include ... />
Now schema include statements should be handled correctly.
-- Also fixed a problem with relative uri handling for XMLSchema
and SchemaReader.
----------------------------------------------------------------------
Modified Files:
XMLSchema.py -- now we get reasonable error message back when
import or include is incorrectly defined.
File "/usr/local/lib/python2.3/site-packages/ZSI/wstools/XMLSchema.py", line 478, in __checkAttributes
raise SchemaError, '%s, unknown attribute' %a
ZSI.wstools.XMLSchema.SchemaError: location, unknown attribute
----------------------------------------------------------------------
Modified Files:
XMLSchema.py -- fixed two places where 'readFromURL' was supposed
to be loadFromURL.
----------------------------------------------------------------------
Modified Files:
XMLSchema.py -- added a try clause to catch xml.dom.ext ImportError,
and added a SplitQName function that matches xml.dom.ext.SplitQName
output.
----------------------------------------------------------------------
Modified Files:
WSDLTools.py -- added a line in Reader to to set WSDL.location
for files so that imports with relative paths will work for
file paths as well as urls.
XMLSchema.py -- a couple Attribute fixes, and the WSDLAdapter
wasn't passing it's parent into the XMLSchemaComponent
constructor which was messing up import lookups.
----------------------------------------------------------------------
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.
----------------------------------------------------------------------