Skip to content

zeep.exceptions.XMLParseError: No namespace defined for 'xml' #367

@sayan801

Description

@sayan801
  1. The version of zeep - master branch ( https://github.com/mvantellingen/python-zeep/archive/master.zip)

  2. The WSDL you are using -
    xds-iti18-registry-stored-query.wsdl.zip

  3. An example script -
    zeep-validate-wsdl-error.py.zip

  4. Complete folder containing wsdl and script for generating error..
    zeep-bug-report-360-ext.zip

We are using master branch of python-zeep.. When we run zeep validation function we get following error

'''
IHE-actors/zeep-bug-report/360-ext$ sudo python zeep-validate-wsdl-error.py 
Traceback (most recent call last):
  File "zeep-validate-wsdl-error.py", line 5, in <module>
    client = zeep.Client('xds-iti18-registry-stored-query.wsdl')
  File "/usr/local/lib/python2.7/dist-packages/zeep/client.py", line 120, in __init__
    self.wsdl = Document(wsdl, self.transport)
  File "/usr/local/lib/python2.7/dist-packages/zeep/wsdl/wsdl.py", line 65, in __init__
    root_definitions = Definition(self, document, self.location)
  File "/usr/local/lib/python2.7/dist-packages/zeep/wsdl/wsdl.py", line 156, in __init__
    self.parse_types(doc)
  File "/usr/local/lib/python2.7/dist-packages/zeep/wsdl/wsdl.py", line 281, in parse_types
    self.types.add_documents(schema_nodes, self.location)
  File "/usr/local/lib/python2.7/dist-packages/zeep/xsd/schema.py", line 102, in add_documents
    document = self.create_new_document(node, location)
  File "/usr/local/lib/python2.7/dist-packages/zeep/xsd/schema.py", line 189, in create_new_document
    schema.load(self, node)
  File "/usr/local/lib/python2.7/dist-packages/zeep/xsd/schema.py", line 355, in load
    visitor.visit_schema(node)
  File "/usr/local/lib/python2.7/dist-packages/zeep/xsd/visitor.py", line 108, in visit_schema
    self.process(child, parent=node)
  File "/usr/local/lib/python2.7/dist-packages/zeep/xsd/visitor.py", line 50, in process
    result = visit_func(self, node, parent)
  File "/usr/local/lib/python2.7/dist-packages/zeep/xsd/visitor.py", line 169, in visit_import
    schema = self.schema.create_new_document(schema_node, location)
  File "/usr/local/lib/python2.7/dist-packages/zeep/xsd/schema.py", line 189, in create_new_document
    schema.load(self, node)
  File "/usr/local/lib/python2.7/dist-packages/zeep/xsd/schema.py", line 355, in load
    visitor.visit_schema(node)
  File "/usr/local/lib/python2.7/dist-packages/zeep/xsd/visitor.py", line 108, in visit_schema
    self.process(child, parent=node)
  File "/usr/local/lib/python2.7/dist-packages/zeep/xsd/visitor.py", line 50, in process
    result = visit_func(self, node, parent)
  File "/usr/local/lib/python2.7/dist-packages/zeep/xsd/visitor.py", line 169, in visit_import
    schema = self.schema.create_new_document(schema_node, location)
  File "/usr/local/lib/python2.7/dist-packages/zeep/xsd/schema.py", line 189, in create_new_document
    schema.load(self, node)
  File "/usr/local/lib/python2.7/dist-packages/zeep/xsd/schema.py", line 355, in load
    visitor.visit_schema(node)
  File "/usr/local/lib/python2.7/dist-packages/zeep/xsd/visitor.py", line 108, in visit_schema
    self.process(child, parent=node)
  File "/usr/local/lib/python2.7/dist-packages/zeep/xsd/visitor.py", line 50, in process
    result = visit_func(self, node, parent)
  File "/usr/local/lib/python2.7/dist-packages/zeep/xsd/visitor.py", line 169, in visit_import
    schema = self.schema.create_new_document(schema_node, location)
  File "/usr/local/lib/python2.7/dist-packages/zeep/xsd/schema.py", line 189, in create_new_document
    schema.load(self, node)
  File "/usr/local/lib/python2.7/dist-packages/zeep/xsd/schema.py", line 355, in load
    visitor.visit_schema(node)
  File "/usr/local/lib/python2.7/dist-packages/zeep/xsd/visitor.py", line 108, in visit_schema
    self.process(child, parent=node)
  File "/usr/local/lib/python2.7/dist-packages/zeep/xsd/visitor.py", line 50, in process
    result = visit_func(self, node, parent)
  File "/usr/local/lib/python2.7/dist-packages/zeep/xsd/visitor.py", line 849, in visit_attribute_group
    attributes = self._process_attributes(node, children)
  File "/usr/local/lib/python2.7/dist-packages/zeep/xsd/visitor.py", line 926, in _process_attributes
    attribute = self.process(child, node)
  File "/usr/local/lib/python2.7/dist-packages/zeep/xsd/visitor.py", line 50, in process
    result = visit_func(self, node, parent)
  File "/usr/local/lib/python2.7/dist-packages/zeep/xsd/visitor.py", line 328, in visit_attribute
    result = self.process_ref_attribute(node, array_type=array_type)
  File "/usr/local/lib/python2.7/dist-packages/zeep/xsd/visitor.py", line 54, in process_ref_attribute
    ref = qname_attr(node, 'ref')
  File "/usr/local/lib/python2.7/dist-packages/zeep/utils.py", line 12, in qname_attr
    return as_qname(value, node.nsmap, target_namespace)
  File "/usr/local/lib/python2.7/dist-packages/zeep/utils.py", line 21, in as_qname
    raise XMLParseError("No namespace defined for %r" % prefix)
zeep.exceptions.XMLParseError: No namespace defined for 'xml'
IHE-actors/zeep-bug-report/360-ext$
'''

This works fine with released version of zeep 1.1.0.. Master branch from github provides above mentioned error.. I am in a dead lock condition as half of my wsdl works with zeep released version 1.1.0 and remaining works with zeep Master branch from github...

Related issue: #360 , #353

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions