Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Python code generation behaviour when dealing with invalid WSDL #105

Open
techdragon opened this issue May 9, 2017 · 1 comment
Open

Comments

@techdragon
Copy link
Contributor

I decided to add some extra test cases by using the W3C WSDL 2.0 Test Suite and I've quickly run into a rather fundamental question.

What should we do when asked to generate code for an invalid WSDL? I'll quote the W3C doc to help explain.

We are mainly concerned with test documents that violate rules that cannot be expressed in the XML schema. Such rules must be checked by validators, for example the Java WSDL 2.0 validator that is part of the Apache Woden project

What should soapfish do when asked to generate code for such an invalid document?

I'm in favour of a permissive default mode, which is what the current behaviour seems to be (4 out of 4 invalid WSDL documents I have tested so far have generated python code), and adding an optional strict mode as a feature later on that will warn or refuse to handle invalid WSDL documents at the users discretion.

Thoughts?

@techdragon techdragon changed the title Python code generation behaviour when dealing with valid XML that represents an invalid WSDL Python code generation behaviour when dealing with invalid WSDL May 9, 2017
@ngnpope ngnpope added this to the Future milestone May 9, 2017
@ngnpope
Copy link
Member

ngnpope commented May 9, 2017

Agreed. Permissive is best as there are too many bits unimplemented. We could try to implement a strict mode, but we'd have to blow up for everything that isn't supported yet.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Development

No branches or pull requests

2 participants